RFC 6389
MPLS Upstream Label Assignment for LDP
Okay bestie, first the header info π This is RFC 6389, called MPLS Upstream Label Assignment for LDP. The authors are R. Aggarwal from Juniper Networks and JL. Le Roux from Orange π It's a Standards Track document, the ISSN is 2070-1721, and it came out in November 2011. The title block doesn't list anything it obsoletes or updates πΈ
Abstract β¨
So this doc is all about how to distribute upstream-assigned labels for the Label Distribution Protocol (LDP) π It also explains how those same procedures can stop branch Label Switching Router (LSR) traffic from getting replicated on a LAN for LDP point-to-multipoint (P2MP) Label Switched Paths (LSPs). The way these two things connect is honestly iconic π¦
Status of This Memo π
This is an Internet Standards Track document, so no cap, it's official π₯
It's a product of the Internet Engineering Task Force (IETF), and it has the consensus of the IETF community. It went through public review and got approved for publication by the Internet Engineering Steering Group (IESG). If you want more on Internet Standards, check out Section 2 of RFC 5741 π
For the current status, errata, and how to send feedback, go to http://www.rfc-editor.org/info/rfc6389 π
Copyright Notice π
Copyright (c) 2011 IETF Trust and the people listed as the document authors. All rights reserved π
This document is covered by BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info), as they stand on the publication date. Please read those carefully, because they spell out your rights and restrictions for this document π Any Code Components pulled out of this document must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come with no warranty, as the Simplified BSD License describes.
This document might include material from IETF Documents or IETF Contributions that were published or made publicly available before November 10, 2008. The people who control the copyright in some of that material may not have given the IETF Trust permission to allow changes outside the IETF Standards Process. So unless you get an adequate license from whoever controls the copyright in those materials, this document can't be modified outside the IETF Standards Process, and derivative works of it can't be made outside it either. The exceptions are formatting it for publication as an RFC or translating it into languages other than English π«Ά
Table of Contents π
1. Introduction ....................................................3
2. Specification of Requirements ...................................3
3. LDP Upstream Label Assignment Capability ........................3
4. Distributing Upstream-Assigned Labels in LDP ....................4
4.1. Procedures .................................................4
5. LDP Tunnel Identifier Exchange ..................................5
6. LDP Point-to-Multipoint LSPs on a LAN ...........................9
7. IANA Considerations ............................................11
7.1. LDP TLVs ..................................................11
7.2. Interface Type Identifiers ................................11
8. Security Considerations ........................................12
9. Acknowledgements ...............................................12
10. References ....................................................12
10.1. Normative References .....................................12
10.2. Informative References ...................................13
1. Introduction π¦
Okay so this document describes how to distribute upstream-assigned labels [RFC5331] for the Label Distribution Protocol (LDP) [RFC5036]. These procedures follow the architecture for MPLS upstream label assignment that [RFC5331] describes π
It also describes LDP extensions that a Label Switching Router (LSR) can use to advertise to its neighboring LSRs whether it supports upstream label assignment β¨
Then there are LDP extensions for distributing upstream-assigned labels too π§
And the doc covers how MPLS upstream label assignment using LDP can avoid branch LSR traffic replication on a LAN for LDP point-to-multipoint (P2MP) Label Switched Paths (LSPs) [RFC6388]. Super useful πΈ
2. Specification of Requirements π
Here's the key word rule: "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] π
3. LDP Upstream Label Assignment Capability π
Per [RFC5331], upstream-assigned label bindings MUST NOT be used unless it is known that a downstream LSR supports them. That means there MUST be a mechanism that lets an LSR advertise to its LDP neighbor LSR(s) that it supports upstream-assigned labels π
A new Capability Parameter, the LDP Upstream Label Assignment Capability, lets an LDP peer exchange its upstream label assignment support with its peers. It follows the format and procedures for exchanging Capability Parameters defined in [RFC5561] π«Ά
Here's the format of the LDP Upstream Label Assignment Capability Parameter π
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0| Upstrm Lbl Ass Cap(0x0507)| Length (= 1) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1| Reserved |
+-+-+-+-+-+-+-+-+
If an LSR includes the Upstream Label Assignment Capability in LDP Initialization messages, it means the LSR can both distribute upstream-assigned label bindings and receive them π¦ The reserved bits MUST be set to zero on transmission and ignored on receipt. The Upstream Label Assignment Capability Parameter MUST be carried only in LDP Initialization messages and MUST be ignored if received in LDP Capability messages π
4. Distributing Upstream-Assigned Labels in LDP π
An optional LDP TLV, the Upstream-Assigned Label Request TLV, is introduced. To request an upstream-assigned label, an LDP peer MUST include this TLV in a Label Request message π
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|0|Upstrm-Ass Lbl Req (0x0205)| Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
An optional LDP TLV, the Upstream-Assigned Label TLV, is introduced to signal an upstream-assigned label. Upstream-Assigned Label TLVs are carried by the messages used to advertise, release, and withdraw upstream-assigned label mappings π
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|0| Upstrm-Ass Label (0x0204) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Label field is a 20-bit label value as specified in [RFC3032], represented as a 20-bit number in a 4-octet field as specified in Section 3.4.2.1 of RFC 5036 [RFC5036] β¨
4.1. Procedures π οΈ
Procedures for Label Mapping, Label Request, Label Abort, Label Withdraw, and Label Release follow [RFC5036], except for the modifications pointed out in this section π
An LDP LSR MUST NOT distribute the Upstream-Assigned Label TLV to a neighboring LSR if that neighboring LSR has not previously advertised the Upstream Label Assignment Capability in its LDP Initialization messages. An LDP LSR MUST NOT send the Upstream-Assigned Label Request TLV to a neighboring LSR if that neighboring LSR has not previously advertised the Upstream Label Assignment Capability in its LDP Initialization messages π
As [RFC5331] describes, distributing upstream-assigned labels is similar to either ordered LSP control or independent LSP control of the downstream-assigned labels π¦
When the label in a Label Mapping message is an upstream-assigned label, the Upstream-Assigned Label TLV MUST be included in the Label Mapping message. When an LSR receives a Label Mapping message with an Upstream-Assigned Label TLV and doesn't recognize the TLV, it MUST generate a Notification message with a status code of "Unknown TLV" [RFC5036]. If it does recognize the TLV but can't process the upstream label, it MUST generate a Notification message with a status code of "No Label Resources". If the Label Mapping message was generated in response to a Label Request message, the Label Request message MUST contain an Upstream-Assigned Label Request TLV πΈ
An LSR that sends an upstream-assigned label request to a neighbor LSR for a given FEC MUST NOT send a downstream label mapping to that neighbor LSR for that FEC, unless it withdraws the upstream-assigned label binding. Similarly, if an LSR sends a downstream-assigned label request to a neighbor LSR for a given FEC, it MUST NOT send an upstream label mapping to that LSR for that FEC, unless it aborts the downstream-assigned label request π₯
The Upstream-Assigned Label TLV may be optionally included in Label Withdraw and Label Release messages that withdraw or release a particular upstream-assigned label binding π
5. LDP Tunnel Identifier Exchange β¨
okay so bestie, [RFC5331] says a specific upstream LSR (Ru) MAY send an MPLS packet to its downstream neighbor LSR (Rd) where the top label (L) is upstream assigned. The catch is that Rd works out that L is upstream assigned from the tunnel the packet shows up on π«Ά Which means Ru needs some way to tell Rd "hey, this particular tunnel from me to you is the one I'll use for upstream-assigned labels" π¦
When LDP is doing the upstream label assignment, the Interface ID TLV [RFC3472] is what carries that Tunnel Identifier π If Ru is using an IP or MPLS tunnel to send those packets, Ru MUST include the Interface ID TLV in the Label Mapping messages, right alongside the Upstream-Assigned Label TLV. The IPv4/IPv6 Next/Previous Hop Address and the Logical Interface ID fields in the Interface ID TLV SHOULD be set to 0 by the sender and ignored by the receiver. The Length field is the total length of the TLV, aka 4 + the length of the Value field in octets. And if the Value field isn't a multiple of four, it MUST be zero-padded so the TLV stays four-octet aligned π
Anyway, here's what the IPv4 Interface ID TLV looks like πΈ
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|0| Type (0x082d) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Next/Previous Hop Address (0) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Logical Interface ID (0) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-TLVs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
And the IPv6 Interface ID TLV is giving the same energy π
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|0| Type (0x082e) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Next/Previous Hop Address (0) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Logical Interface ID (0) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-TLVs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
So the Interface ID TLV carries sub-TLVs, and that's where the magic is β¨ Four new Interface ID sub-TLVs get introduced to support RSVP - Traffic Engineering (RSVP-TE) P2MP LSPs, LDP P2MP LSPs, IP Multicast Tunnels, and context labels. The sub-TLV value inside the sub-TLV acts as the tunnel identifier π§
Here are the new sub-TLVs:
1. RSVP-TE P2MP LSP TLV (Type = 28)
The value of this TLV is the RSVP-TE P2MP LSP SESSION Object [RFC4875] π
When it rides inside the IPv4 Interface ID TLV, it looks like this:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type (0x1c) | 16 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| P2MP ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MUST be zero | Tunnel ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extended Tunnel ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
And when it rides inside the IPv6 Interface ID TLV, it looks like this:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type (0x1c) | 28 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| P2MP ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MUST be zero | Tunnel ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extended Tunnel ID |
| |
| ....... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This TLV identifies the RSVP-TE P2MP LSP π¦ It lets Ru tunnel an "inner" LDP P2MP LSP (the label for which is upstream assigned) over an "outer" RSVP-TE P2MP LSP that has leaves <Rd1...Rdn>. The RSVP-TE P2MP LSP IF_ID TLV is how Ru signals the binding of that inner LDP P2MP LSP to the outer RSVP-TE P2MP LSP to <Rd1...Rdn>. And the control-plane signaling between Ru and <Rd1...Rdn> for the inner P2MP LSP uses targeted LDP signaling messages π
2. LDP P2MP LSP TLV (Type = 29)
The value of this TLV is the LDP P2MP FEC as defined in [RFC6388], and it has to be set per the procedures in [RFC6388]. Here's the LDP P2MP FEC format from [RFC6388] π
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|P2MP Type | Address Family | Address Length|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Root Node Address ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Length | Opaque Value ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
~ ~
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
When the LDP P2MP LSP TLV is in the IPv4 Interface ID TLV, the Address Family MUST be set to IPv4, the Address Length MUST be set to 4, and the Root Node Address MUST be set to an IPv4 address. When it's in the IPv6 Interface ID TLV, the Address Family MUST be set to IPv6, the Address Length MUST be set to 16, and the Root Node Address MUST be set to an IPv6 address. Strict, but we love a rule π
The TLV value identifies the LDP P2MP LSP. It lets Ru tunnel an inner LDP P2MP LSP (label upstream assigned) over an outer LDP P2MP LSP that has leaves <Rd1...Rdn>. The LDP P2MP LSP IF_ID TLV is how Ru signals to <Rd1...Rdn> the binding of the inner LDP P2MP LSP to the outer LDP-P2MP LSP. Same deal as before: the control-plane signaling between Ru and <Rd1...Rdn> for the inner P2MP LSP uses targeted LDP signaling messages π
3. IP Multicast Tunnel TLV (Type = 30)
Here the TLV value is a <Source Address, Multicast Group Address> tuple. The Source Address is the IP address of the root of the tunnel (aka Ru), and the Multicast Group Address is the Multicast Group Address that the tunnel uses. The addresses MUST be IPv4 addresses when the IP Multicast Tunnel TLV is included in the IPv4 Interface ID TLV. The addresses MUST be IPv6 addresses when it's included in the IPv6 Interface ID TLV π₯
4. MPLS Context Label TLV (Type = 31)
This time the TLV value is a <Source Address, MPLS Context Label> tuple. The Source Address belongs to Ru, and the MPLS Context Label is an upstream-assigned label that Ru assigned π The Source Address MUST be set to an IPv4 address when the MPLS Context Label TLV is carried in the IPv4 Interface ID TLV. The Source Address MUST be set to an IPv6 address when it's carried in the IPv6 Interface ID TLV.
This lets Ru tunnel an inner LDP P2MP LSP (label upstream assigned) over an outer one-hop MPLS LSP, and that outer one-hop LSP has these properties:
- The label Ru pushes for the outer MPLS LSP is an upstream-assigned context label that Ru assigned. When
<Rd1...Rdn>do an MPLS label lookup on this label, the combination of this label and the incoming interface MUST be sufficient for<Rd1...Rdn>to uniquely determine Ru's context-specific label space, so they can look up the next label on the stack.<Rd1...Rdn>MUST receive the data Ru sends with the context-specific label Ru assigned as the top label on the label stack π§
Right now the Context Label TLV is only used for LDP P2MP LSPs on a LAN, as the next section specifies πΈ The Context Label TLV MUST NOT be used for any other purpose. Strict bestie rule, no exceptions π ββοΈ
Quick heads-up: when the outer P2MP LSP is signaled with RSVP-TE or MLDP, the procedures above assume Ru has a priori knowledge of all the <Rd1, ... Rdn>. With RSVP-TE, Ru can get that info from RSVP-TE itself. With MLDP, though, MLDP does not give Ru that info, and how Ru could find it out is outside the scope of this document π
6. LDP Point-to-Multipoint LSPs on a LAN β¨
okay so this section is ONE example of how upstream label assignment can be used with LDP π¦ other uses are going to get their own documents, so this is just the LAN case.
[RFC6388] is the thing that tells you how to set up P2MP LSPs with LDP πΈ on a LAN, the existing solution is kinda basic and relies on "ingress replication". So a branch LSR on a LAN (let's call it Ru) sends a separate copy of each packet it gets on the P2MP LSP to every downstream LSR on that LAN (<Rd1...Rdn>) that's adjacent to it in the P2MP LSP. Not very efficient, bestie π
What we actually want is for Ru to send ONE copy of the packet on the LAN when several downstream routers on that LAN are adjacent to Ru in that LDP P2MP LSP. That only works if every one of <Rd1...Rdn> can associate the label L (the one Ru uses to transmit packets for the P2MP LSP on the LAN) with that P2MP LSP. And the way to get there is LDP upstream-assigned labels, using the procedures below π
Here's the setup. Say an LSR Rd gets the LDP P2MP FEC [RFC6388] from its downstream LDP peer. Also, the upstream interface Rd uses to reach Ru (the next hop toward the P2MP LSP root address Pr in that LDP P2MP FEC) is a LAN interface (Li), and both Rd and Ru support upstream-assigned labels. In that case, Rd does NOT send the Label Mapping message the way [RFC6388] describes. Instead it sends a Label Request message to Ru, and that Label Request message MUST contain an Upstream-Assigned Label Request TLV π
When Ru gets that, it sends a Label Mapping message back to Rd with an upstream-assigned label. This message also carries an Interface ID TLV with an MPLS Context Label sub-TLV (same as the previous section), with the MPLS label value set to whatever Ru assigned on interface Li, as specified in [RFC5331]. The Label Request and Label Mapping processing for upstream-assigned labels is the same as Section 4.1. Also, if Ru gets Label Requests for an upstream-assigned label for the same P2MP FEC from several downstream LSRs on the LAN (<Rd1...Rdn>), Ru MUST send the SAME upstream-assigned label to each of <Rd1...Rdn> π«Ά
Now the forwarding part. Ru sends the MPLS packet using the procedures in [RFC5331] and [RFC5332] π§ The packet has the context label Ru assigned on the LAN interface Li as the TOP label, and the upstream label Ru assigned to the LDP P2MP LSP as the BOTTOM label. A downstream LSR on the LAN looks up the top label in the context of the LAN interface (Li). That lookup tells the downstream LSR which context-specific label space to use when it looks up the inner label. It's giving layered, but it works π
One more thing: <Rd1...Rdn> might have more than one equal-cost next hop on the LAN to reach Pr. It MAY be desirable for all of them to send the label request to the SAME upstream LSR, and they MAY pick one upstream LSR using this procedure:
- The candidate upstream LSRs are numbered from lower to higher IP address.
- The following hash is performed:
H = (Sum Opaque value) modulo N, where N is the number of candidate upstream LSRs. The Opaque value is defined in [RFC6388] and comprises the P2MP LSP identifier. - The selected upstream LSR U is the LSR that has the number H.
This gives you load balancing of a bunch of LSPs across the candidate upstream LSRs, while making sure that on a LAN interface only ONE upstream LSR gets picked. Iconic π Also, the procedures in this section can still be used by Rd and Ru even if other LSRs on the LAN don't support upstream label assignment. Ingress replication and downstream label assignment just keep going for the LSRs that don't support upstream label assignment π
7. IANA Considerations π
7.1. LDP TLVs
IANA keeps a registry of LDP TLVs in the "Label Distribution Protocol" registry, in the sub-registry called "TLV Type Name Space" π
This document defines a new LDP Upstream Label Assignment Capability TLV (Section 3). IANA assigned the value 0x0507 to this TLV β¨
This document also defines a new LDP Upstream-Assigned Label TLV (Section 4). IANA assigned the type value 0x204 to this TLV π¦
And this document defines a new LDP Upstream-Assigned Label Request TLV (Section 4). IANA assigned the type value 0x205 to this one π
7.2. Interface Type Identifiers
[RFC3472] defines the LDP Interface ID IPv4 and IPv6 TLV. These top-level TLVs can carry sub-TLVs that depend on the interface type, and those sub-TLVs get assigned "Interface ID Types". IANA keeps a registry of Interface ID Types for use in GMPLS, in the registry "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Parameters" and its sub-registry "Interface_ID Types". IANA has made these corresponding allocations from that registry:
- RSVP-TE P2MP LSP TLV (value 28)
- LDP P2MP LSP TLV (value 29)
- IP Multicast Tunnel TLV (value 30)
- MPLS Context Label TLV (value 31)
8. Security Considerations π₯
The security considerations discussed in [RFC5036], [RFC5331], and [RFC5332] apply to this document. Read those, bestie, they matter π
More detailed discussion of security issues that are relevant in the context of MPLS and GMPLS is in "Security Framework for MPLS and GMPLS Networks" [RFC5920]. That covers security threats, related defensive techniques, and the mechanisms for detection and reporting. Seriously, this part is not optional ππ₯
9. Acknowledgements π«Ά
Thanks to Yakov Rekhter for his contribution. Thanks to Ina Minei and Thomas Morin for their comments. The hashing algorithm used on LAN interfaces is taken from [RFC6388]. Thanks to Loa Andersson, Adrian Farrel, and Eric Rosen for their comments and review. The whole crew π
10. References π
10.1. Normative References
- [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
- [RFC5036] Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed., "LDP Specification", RFC 5036, October 2007.
- [RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. Yasukawa, Ed., "Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs)", RFC 4875, May 2007.
- [RFC5331] Aggarwal, R., Rekhter, Y., and E. Rosen, "MPLS Upstream Label Assignment and Context-Specific Label Space", RFC 5331, August 2008.
- [RFC5332] Eckert, T., Rosen, E., Ed., Aggarwal, R., and Y. Rekhter, "MPLS Multicast Encapsulations", RFC 5332, August 2008.
- [RFC5561] Thomas, B., Raza, K., Aggarwal, S., Aggarwal, R., and JL. Le Roux, "LDP Capabilities", RFC 5561, July 2009.
- [RFC6388] Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. Thomas, "Label Distribution Protocol Extensions for Point-to-Multipoint and Multipoint-to-Multipoint Label Switched Paths", RFC 6388, November 2011.
10.2. Informative References
- [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack Encoding", RFC 3032, January 2001.
- [RFC3472] Ashwood-Smith, P., Ed., and L. Berger, Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Constraint-based Routed Label Distribution Protocol (CR-LDP) Extensions", RFC 3472, January 2003.
- [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS Networks", RFC 5920, July 2010.
Author's Address π
Rahul Aggarwal
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
Phone: +1-408-936-2720
EMail: raggarwa_1@yahoo.com
Jean-Louis Le Roux
France Telecom
2, avenue Pierre-Marzin
22307 Lannion Cedex
France
EMail: jeanlouis.leroux@orange-ftgroup.com
That's the whole RFC, bestie! πβ¨ Go be iconic π
π¦ where this page comes from
- ietf: rfc6389 2011-11
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms