3.5.8. Message Label Request
Un LSR envoie le message Label Request à un pair LDP pour demander une liaison (mappage) pour une FEC.
L'encodage du message Label Request est :
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Request (0x0401) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Message ID Valeur de 32 bits utilisée pour identifier ce message.
FEC TLV La FEC pour laquelle une étiquette est demandée. Voir la section "FEC TLV" pour l'encodage.
Optional Parameters Ce champ de longueur variable contient 0 ou plusieurs paramètres, chacun encodé sous forme de TLV. Les paramètres optionnels sont :
Optional Parameter Length Value
Hop Count TLV 1 See below
Path Vector TLV variable See below
Les encodages des Hop Count et Path Vector TLV se trouvent dans la section "TLV Encodings for Commonly Used Parameters".
Hop Count Spécifie le total cumulé du nombre de sauts de LSR le long du LSP en cours d'établissement par le message Label Request. La section "Hop Count Procedures" décrit comment traiter ce TLV.
Path Vector Spécifie les LSR le long du LSP en cours d'établissement par le message Label Request. La section "Path Vector Procedures" décrit comment traiter ce TLV.
3.5.8.1. Procédures du message Label Request
Le message Request est utilisé par un LSR en amont pour demander explicitement au LSR en aval d'attribuer et d'annoncer une étiquette pour une FEC.
Un LSR peut transmettre un message Request dans l'une quelconque des conditions suivantes :
-
Le LSR reconnaît une nouvelle FEC via la table de transfert, le next hop est un pair LDP, et le LSR ne dispose pas déjà d'un mappage provenant du next hop pour la FEC donnée.
-
Le next hop vers la FEC change, et le LSR ne dispose pas déjà d'un mappage provenant de ce next hop pour la FEC donnée.
Notez que si le LSR a déjà un message Label Request en attente pour le nouveau next hop, il NE DEVRAIT PAS (SHOULD NOT) émettre un Label Request supplémentaire en réponse au changement de next hop.
-
Le LSR reçoit un Label Request pour une FEC de la part d'un pair LDP en amont, le next hop de la FEC est un pair LDP, et le LSR ne dispose pas déjà d'un mappage provenant du next hop.
Notez que, puisqu'un LSR non fusionnant doit établir un LSP distinct pour chaque pair en amont demandant une étiquette, il doit envoyer un Label Request distinct pour chacun de ces pairs. Une conséquence de ceci est qu'un LSR non fusionnant peut avoir plusieurs messages Label Request en cours pour une FEC donnée au même moment.
Le LSR récepteur DEVRAIT (SHOULD) répondre à un message Label Request par un Label Mapping pour l'étiquette demandée ou par un message Notification indiquant pourquoi il ne peut pas satisfaire la demande.
Lorsque la FEC pour laquelle une étiquette est demandée est un Prefix FEC Element, le LSR récepteur utilise sa table de routage pour déterminer sa réponse. À moins que sa table de routage ne contienne une entrée qui corresponde exactement au Prefix demandé, le LSR DOIT (MUST) répondre par un message Notification No Route.
Le message ID du message Label Request sert d'identifiant pour la transaction Label Request. Lorsque le LSR récepteur répond par un message Label Mapping, le message Mapping DOIT (MUST) inclure un paramètre optionnel Label Request/Returned Message ID TLV qui contient le message ID du message Label Request. Notez que, puisque les LSR utilisent les message IDs des Label Request comme identifiants de transaction, un LSR NE DEVRAIT PAS (SHOULD NOT) réutiliser le message ID d'un message Label Request avant que la transaction correspondante ne soit terminée.
Cette version du protocole définit les Status Codes suivants pour le message Notification signalant qu'une demande ne peut pas être satisfaite :
No Route La FEC pour laquelle une étiquette a été demandée inclut un FEC Element pour lequel le LSR n'a pas de route.
No Label Resources Le LSR ne peut pas fournir d'étiquette en raison de limitations de ressources. Lorsque des ressources deviennent disponibles, le LSR DOIT (MUST) en informer le LSR demandeur en envoyant un message Notification avec le Status Code Label Resources Available.
Un LSR qui reçoit une réponse No Label Resources à un message Label Request NE DOIT PAS (MUST NOT) émettre d'autres messages Label Request avant d'avoir reçu un message Notification avec le Status Code Label Resources Available.
Loop Detected Le LSR a détecté un message Label Request en boucle.
Voir l'annexe A, "LDP Label Distribution Procedures", pour plus de détails.