3.5.8. Label Request-Nachricht
Ein LSR sendet die Label Request-Nachricht an einen LDP-Peer, um eine Bindung (Abbildung) für eine FEC anzufordern.
Die Kodierung für die Label Request-Nachricht ist:
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 32-Bit-Wert, der verwendet wird, um diese Nachricht zu identifizieren.
FEC TLV Die FEC, für die ein Label angefordert wird. Zur Kodierung siehe den Abschnitt "FEC TLV".
Optional Parameters Dieses Feld variabler Länge enthält 0 oder mehr Parameter, jeder als TLV kodiert. Die optionalen Parameter sind:
Optional Parameter Length Value
Hop Count TLV 1 See below
Path Vector TLV variable See below
Die Kodierungen für die Hop Count- und Path Vector-TLVs finden sich im Abschnitt "TLV Encodings for Commonly Used Parameters".
Hop Count Gibt den laufenden Gesamtwert der Anzahl der LSR-Hops entlang der durch die Label Request-Nachricht aufgebauten LSP an. Der Abschnitt "Hop Count Procedures" beschreibt, wie dieses TLV zu behandeln ist.
Path Vector Gibt die LSRs entlang der durch die Label Request-Nachricht aufgebauten LSP an. Der Abschnitt "Path Vector Procedures" beschreibt, wie dieses TLV zu behandeln ist.
3.5.8.1. Label Request-Nachrichtenverfahren
Die Request-Nachricht wird von einem vorgelagerten LSR verwendet, um ausdrücklich anzufordern, dass der nachgelagerte LSR ein Label für eine FEC zuweist und ankündigt.
Ein LSR kann eine Request-Nachricht unter einer der folgenden Bedingungen übertragen:
-
Der LSR erkennt eine neue FEC über die Weiterleitungstabelle, der Next Hop ist ein LDP-Peer, und der LSR hat nicht bereits eine Abbildung vom Next Hop für die gegebene FEC.
-
Der Next Hop zur FEC ändert sich, und der LSR hat nicht bereits eine Abbildung von diesem Next Hop für die gegebene FEC.
Beachten Sie, dass der LSR, wenn er bereits eine ausstehende Label Request-Nachricht für den neuen Next Hop hat, als Antwort auf die Änderung des Next Hops SOLLTE (SHOULD) keine zusätzliche Label Request ausgeben.
-
Der LSR empfängt eine Label Request für eine FEC von einem vorgelagerten LDP-Peer, der FEC-Next-Hop ist ein LDP-Peer, und der LSR hat nicht bereits eine Abbildung vom Next Hop.
Beachten Sie, dass, da ein Non-Merge-LSR für jeden vorgelagerten Peer, der ein Label anfordert, eine separate LSP aufbauen muss, er für jeden solchen Peer eine separate Label Request senden muss. Eine Folge davon ist, dass ein Non-Merge-LSR mehrere Label Request-Nachrichten für eine gegebene FEC gleichzeitig ausstehend haben kann.
Der empfangende LSR SOLLTE (SHOULD) auf eine Label Request-Nachricht mit einer Label Mapping für das angeforderte Label oder mit einer Notification-Nachricht antworten, die angibt, warum er die Anforderung nicht erfüllen kann.
Wenn die FEC, für die ein Label angefordert wird, ein Prefix FEC Element ist, verwendet der empfangende LSR seine Routing-Tabelle, um seine Antwort zu bestimmen. Sofern seine Routing-Tabelle keinen Eintrag enthält, der genau zum angeforderten Prefix passt, MUSS (MUST) der LSR mit einer No Route Notification-Nachricht antworten.
Die Message ID der Label Request-Nachricht dient als Bezeichner für die Label Request-Transaktion. Wenn der empfangende LSR mit einer Label Mapping-Nachricht antwortet, MUSS (MUST) die Mapping-Nachricht einen optionalen Parameter Label Request/Returned Message ID TLV einschließen, der die Message ID der Label Request-Nachricht enthält. Beachten Sie, dass LSRs, da sie die Message IDs von Label Request-Nachrichten als Transaktionsbezeichner verwenden, die Message ID einer Label Request-Nachricht SOLLTEN (SHOULD) NICHT wiederverwenden, bis die entsprechende Transaktion abgeschlossen ist.
Diese Version des Protokolls definiert die folgenden Status Codes für die Notification-Nachricht, die signalisiert, dass eine Anforderung nicht erfüllt werden kann:
No Route Die FEC, für die ein Label angefordert wurde, enthält ein FEC Element, für das der LSR keine Route hat.
No Label Resources Der LSR kann wegen Ressourcenbeschränkungen kein Label bereitstellen. Wenn Ressourcen verfügbar werden, MUSS (MUST) der LSR den anfordernden LSR benachrichtigen, indem er eine Notification-Nachricht mit dem Status Code Label Resources Available sendet.
Ein LSR, der als Antwort auf eine Label Request-Nachricht eine No Label Resources-Antwort empfängt, MUSS (MUST) NICHT weitere Label Request-Nachrichten ausgeben, bis er eine Notification-Nachricht mit dem Status Code Label Resources Available empfängt.
Loop Detected Der LSR hat eine im Kreis laufende Label Request-Nachricht erkannt.
Weitere Einzelheiten finden Sie in Anhang A, "LDP Label Distribution Procedures".