8.2. Description of FSM (Description de la FSM)
8.2. Description of FSM (Description de la FSM)
8.2.1. FSM Definition (Définition de la FSM)
BGP DOIT (MUST) maintenir une FSM séparée pour chaque pair configuré. Chaque pair BGP apparié dans une connexion potentielle tentera de se connecter à l'autre, à moins d'être configuré pour rester dans l'état idle ou configuré pour rester passif. Aux fins de cette discussion, le côté actif ou connectant de la connexion TCP (le côté d'une connexion TCP envoyant le premier paquet SYN TCP) est appelé sortant. Le côté passif ou d'écoute (l'expéditeur du premier SYN/ACK) est appelé une connexion entrante. (Voir la Section 8.2.1.1 pour des informations sur les termes actif et passif utilisés ci-dessous.)
Une implémentation BGP DOIT (MUST) se connecter et écouter sur le port TCP 179 pour les connexions entrantes en plus de tenter de se connecter aux pairs. Pour chaque connexion entrante, une machine à états DOIT (MUST) être instanciée. Il existe une période pendant laquelle l'identité du pair à l'autre extrémité d'une connexion entrante est connue, mais l'identifiant BGP n'est pas connu. Pendant ce temps, une connexion entrante et une connexion sortante peuvent exister pour le même appairage configuré. Cela est appelé une collision de connexion (voir Section 6.8).
Une implémentation BGP aura, au plus, une FSM pour chaque appairage configuré, plus une FSM pour chaque connexion TCP entrante pour laquelle le pair n'a pas encore été identifié. Chaque FSM correspond exactement à une connexion TCP.
Il peut y avoir plus d'une connexion entre une paire de pairs si les connexions sont configurées pour utiliser une paire différente d'adresses IP. Cela est appelé plusieurs "appairages configurés" vers le même pair.
8.2.1.1. Terms "active" and "passive" (Termes "actif" et "passif")
Les termes actif et passif ont été dans le vocabulaire des opérateurs Internet depuis près d'une décennie et se sont révélés utiles. Les mots actif et passif ont des significations légèrement différentes lorsqu'ils sont appliqués à une connexion TCP ou à un pair. Il n'y a qu'un côté actif et un côté passif pour toute connexion TCP, selon la définition ci-dessus et la machine à états ci-dessous. Lorsqu'un locuteur BGP est configuré comme actif, il peut finir du côté actif ou passif de la connexion qui finit par être établie. Une fois la connexion TCP terminée, peu importe quelle extrémité était active et laquelle était passive. La seule différence réside dans le côté de la connexion TCP qui a le numéro de port 179.
8.2.1.2. FSM and Collision Detection (FSM et détection de collision)
Il y a une FSM par connexion BGP. Lorsque la collision de connexion se produit avant de déterminer à quel pair une connexion est associée, il peut y avoir deux connexions pour un pair. Après la résolution de la collision de connexion (voir Section 6.8), la FSM pour la connexion qui est fermée DEVRAIT (SHOULD) être éliminée.
8.2.1.3. FSM and Optional Session Attributes (FSM et attributs de session optionnels)
Les attributs de session optionnels spécifient soit des attributs qui agissent comme des drapeaux (TRUE ou FALSE), soit des temporisateurs optionnels. Pour les attributs optionnels qui agissent comme des drapeaux, si l'attribut de session optionnel peut être défini à TRUE sur le système, les actions FSM BGP correspondantes doivent être supportées. Par exemple, si les options suivantes peuvent être définies dans une implémentation BGP : AutoStart et PassiveTcpEstablishment, alors les événements 3, 4 et 5 doivent être supportés. Si un attribut de session optionnel ne peut pas être défini à TRUE, les événements supportant cet ensemble d'options n'ont pas à être supportés.
Chacun des temporisateurs optionnels (DelayOpenTimer et IdleHoldTimer) a un groupe d'attributs qui sont :
- drapeau indiquant le support,
- Temps défini dans le temporisateur
- Temporisateur.
Les deux temporisateurs optionnels montrent ce format :
DelayOpenTimer: DelayOpen, DelayOpenTime, DelayOpenTimer
IdleHoldTimer: DampPeerOscillations, IdleHoldTime,
IdleHoldTimer
Si le drapeau indiquant le support d'un temporisateur optionnel (DelayOpen ou DampPeerOscillations) ne peut pas être défini à TRUE, les temporisateurs et événements supportant cette option n'ont pas à être supportés.
8.2.1.4. FSM Event Numbers (Numéros d'événement FSM)
Les numéros d'événement (1-28) utilisés dans cette description de machine à états aident à spécifier le comportement de la machine à états BGP. Les implémentations PEUVENT (MAY) utiliser ces numéros pour fournir des informations de gestion de réseau. La forme exacte d'une FSM ou des événements FSM est spécifique à chaque implémentation.
8.2.1.5. FSM Actions that are Implementation Dependent (Actions FSM qui dépendent de l'implémentation)
À certains points, la FSM BGP spécifie que l'initialisation BGP se produira ou que les ressources BGP seront supprimées. L'initialisation de la FSM BGP et des ressources associées dépend de la portion politique de l'implémentation BGP. Les détails de ces actions sont hors du champ d'application du document FSM.