Appendice A. Procedure di distribuzione delle etichette LDP
Questa sezione specifica il comportamento di distribuzione delle etichette in termini di risposta dell'LSR ai seguenti eventi:
- Ricezione di un messaggio Label Request;
- Ricezione di un messaggio Label Mapping;
- Ricezione di un messaggio Label Abort Request;
- Ricezione di un messaggio Label Release;
- Ricezione di un messaggio Label Withdraw;
- Riconoscimento di una nuova FEC;
- Rilevamento di un cambiamento nel next hop della FEC;
- Ricezione di un messaggio Notification / Label Request Aborted;
- Ricezione di un messaggio Notification / No Label Resources;
- Ricezione di un messaggio Notification / No Route;
- Ricezione di un messaggio Notification / Loop Detected;
- Ricezione di un messaggio Notification / Label Resources Available;
- Rilevamento che le risorse di etichette locali sono diventate disponibili;
- Decisione dell'LSR di non commutare più etichette per una FEC;
- Timeout di una label request differita.
La specifica del comportamento dell'LSR in risposta a un evento ha tre parti:
-
Riepilogo. Testo in prosa che descrive in sintesi la risposta dell'LSR all'evento.
-
Contesto. Un elenco di elementi a cui fa riferimento la parte Algoritmo della specifica. (Vedere 3.)
-
Algoritmo. Un algoritmo per la risposta dell'LSR all'evento.
Il riepilogo può omettere dettagli della risposta dell'LSR, come azioni di bookkeeping o comportamenti dipendenti dalla modalità di advertisement delle etichette, dalla modalità di controllo o dalla modalità di conservazione delle etichette in uso. L'intento è che l'Algoritmo specifichi in modo completo e non ambiguo la risposta dell'LSR.
Gli algoritmi di questa sezione usano procedure definite nella specifica dell'architettura MPLS [RFC3031] per il traffico instradato hop-by-hop. Queste procedure sono:
-
Procedura di distribuzione delle etichette (Label Distribution), eseguita da un LSR a valle per determinare quando distribuire un'etichetta per una FEC ai peer LDP. L'architettura definisce quattro procedure di Label Distribution:
. Downstream Unsolicited Independent Control, chiamata PushUnconditional nella [RFC3031].
. Downstream Unsolicited Ordered Control, chiamata PushConditional nella [RFC3031].
. Downstream On Demand Independent Control, chiamata PulledUnconditional nella [RFC3031].
. Downstream On Demand Ordered Control, chiamata PulledConditional nella [RFC3031].
-
Procedura di ritiro delle etichette (Label Withdrawal), eseguita da un LSR a valle per determinare quando ritirare una mappatura di etichette di FEC precedentemente distribuita ai peer LDP. L'architettura definisce un'unica procedura di Label Withdrawal. Ogni volta che un LSR rompe l'associazione tra un'etichetta e una FEC, DEVE (MUST) ritirare la mappatura di etichette della FEC da tutti i peer LDP a cui aveva precedentemente inviato la mappatura.
-
Procedura di richiesta di etichette (Label Request), eseguita da un LSR a monte per determinare quando richiedere esplicitamente a un LSR a valle di associare un'etichetta a una FEC e di inviargli la corrispondente mappatura di etichette. L'architettura definisce tre procedure di Label Request:
. Request Never. L'LSR non richiede mai un'etichetta.
. Request When Needed. L'LSR richiede un'etichetta ogni volta che ne ha bisogno.
. Request On Request. Questa procedura è usata dagli LSR non soggetti a merge di etichette. L'LSR richiede un'etichetta quando riceve una richiesta di etichetta, oltre a ogni volta che ne ha bisogno.
-
Procedura di rilascio delle etichette (Label Release), eseguita da un LSR a monte per determinare quando rilasciare una mappatura di etichette per una FEC precedentemente ricevuta. L'architettura definisce due procedure di Label Release:
. Conservative Label retention, chiamata ReleaseOnChange nella [RFC3031].
. Liberal Label retention, chiamata NoReleaseOnChange nella [RFC3031].
-
Procedura di utilizzo delle etichette (Label Use), eseguita da un LSR per determinare quando iniziare a usare un'etichetta di FEC per l'inoltro/commutazione. L'architettura definisce tre procedure di Label Use:
. Use Immediate. L'LSR usa immediatamente un'etichetta ricevuta da un next hop di FEC per l'inoltro/commutazione.
. Use If Loop Free. L'LSR usa un'etichetta di FEC ricevuta da un next hop di FEC per l'inoltro/commutazione solo se ha determinato che così facendo non causerà un loop di inoltro.
. Use If Loop Not Detected. Questa procedura è identica a Use Immediate a meno che l'LSR non abbia rilevato un loop nell'LSP della FEC. L'uso dell'etichetta di FEC per l'inoltro/commutazione continuerà finché il next hop per la FEC non cambia o il loop non è più rilevato.
Questa versione di LDP non include un meccanismo di prevenzione dei loop; pertanto, le procedure di seguito non fanno uso della procedura Use If Loop Free.
-
Procedura Label No Route (chiamata procedura NotAvailable nella [RFC3031]), eseguita da un LSR a monte per determinare come rispondere a una notifica No Route proveniente da un LSR a valle in risposta a una richiesta di mappatura di etichette per una FEC. La specifica dell'architettura definisce due procedure di Label No Route:
. Request Retry. L'LSR dovrebbe emettere la richiesta di etichetta in un momento successivo.
. No Request Retry. L'LSR dovrebbe presumere che l'LSR a valle fornirà una mappatura di etichette quando l'LSR a valle avrà un next hop, e non dovrebbe riemettere la richiesta.