8.2. Description of FSM (Descrizione della FSM)
8.2. Description of FSM (Descrizione della FSM)
8.2.1. FSM Definition (Definizione FSM)
BGP DEVE (MUST) mantenere una FSM separata per ogni peer configurato. Ogni peer BGP accoppiato in una connessione potenziale tenterà di connettersi all'altro, a meno che non sia configurato per rimanere nello stato idle o configurato per rimanere passivo. Ai fini di questa discussione, il lato attivo o connettente della connessione TCP (il lato di una connessione TCP che invia il primo pacchetto SYN TCP) è chiamato uscente. Il lato passivo o in ascolto (il mittente del primo SYN/ACK) è chiamato una connessione in ingresso. (Vedere la Sezione 8.2.1.1 per informazioni sui termini attivo e passivo utilizzati di seguito.)
Un'implementazione BGP DEVE (MUST) connettersi e ascoltare sulla porta TCP 179 per le connessioni in ingresso oltre a tentare di connettersi ai peer. Per ogni connessione in ingresso, una macchina a stati DEVE (MUST) essere istanziata. Esiste un periodo in cui l'identità del peer all'altro estremo di una connessione in ingresso è nota, ma l'identificatore BGP non è noto. Durante questo tempo, possono esistere sia una connessione in ingresso che una connessione uscente per lo stesso peering configurato. Questo è chiamato collisione di connessione (vedere Sezione 6.8).
Un'implementazione BGP avrà, al massimo, una FSM per ogni peering configurato, più una FSM per ogni connessione TCP in ingresso per la quale il peer non è stato ancora identificato. Ogni FSM corrisponde esattamente a una connessione TCP.
Ci può essere più di una connessione tra una coppia di peer se le connessioni sono configurate per utilizzare una coppia diversa di indirizzi IP. Questo è chiamato più "peering configurati" allo stesso peer.
8.2.1.1. Terms "active" and "passive" (Termini "attivo" e "passivo")
I termini attivo e passivo sono stati nel vocabolario degli operatori Internet per quasi un decennio e si sono dimostrati utili. Le parole attivo e passivo hanno significati leggermente diversi quando applicati a una connessione TCP o a un peer. C'è solo un lato attivo e un lato passivo per qualsiasi connessione TCP, secondo la definizione sopra e la macchina a stati sotto. Quando un altoparlante BGP è configurato come attivo, può finire sul lato attivo o passivo della connessione che alla fine viene stabilita. Una volta completata la connessione TCP, non importa quale estremità fosse attiva e quale fosse passiva. L'unica differenza è su quale lato della connessione TCP si trova il numero di porta 179.
8.2.1.2. FSM and Collision Detection (FSM e rilevamento collisioni)
C'è una FSM per connessione BGP. Quando la collisione di connessione si verifica prima di determinare a quale peer è associata una connessione, possono esistere due connessioni per un peer. Dopo che la collisione di connessione è risolta (vedere Sezione 6.8), la FSM per la connessione che è chiusa DOVREBBE (SHOULD) essere smaltita.
8.2.1.3. FSM and Optional Session Attributes (FSM e attributi di sessione opzionali)
Gli attributi di sessione opzionali specificano attributi che agiscono come flag (TRUE o FALSE) o timer opzionali. Per gli attributi opzionali che agiscono come flag, se l'attributo di sessione opzionale può essere impostato a TRUE sul sistema, le azioni FSM BGP corrispondenti devono essere supportate. Ad esempio, se le seguenti opzioni possono essere impostate in un'implementazione BGP: AutoStart e PassiveTcpEstablishment, allora gli Eventi 3, 4 e 5 devono essere supportati. Se un attributo di sessione opzionale non può essere impostato a TRUE, gli eventi che supportano quel set di opzioni non devono essere supportati.
Ognuno dei timer opzionali (DelayOpenTimer e IdleHoldTimer) ha un gruppo di attributi che sono:
- flag che indica il supporto,
- Tempo impostato nel timer
- Timer.
I due timer opzionali mostrano questo formato:
- DelayOpenTimer: DelayOpen, DelayOpenTime, DelayOpenTimer
- IdleHoldTimer: DampPeerOscillations, IdleHoldTime, IdleHoldTimer
Se il flag che indica il supporto per un timer opzionale (DelayOpen o DampPeerOscillations) non può essere impostato a TRUE, i timer e gli eventi che supportano quell'opzione non devono essere supportati.
8.2.1.4. FSM Event Numbers (Numeri evento FSM)
I numeri evento (1-28) utilizzati in questa descrizione della macchina a stati aiutano a specificare il comportamento della macchina a stati BGP. Le implementazioni POSSONO (MAY) utilizzare questi numeri per fornire informazioni di gestione della rete. La forma esatta di una FSM o degli eventi FSM è specifica per ogni implementazione.
8.2.1.5. FSM Actions that are Implementation Dependent (Azioni FSM che dipendono dall'implementazione)
In certi punti, la FSM BGP specifica che si verificherà l'inizializzazione BGP o che le risorse BGP verranno eliminate. L'inizializzazione della FSM BGP e delle risorse associate dipende dalla porzione di policy dell'implementazione BGP. I dettagli di queste azioni sono al di fuori dell'ambito del documento FSM.