RFC 7551
RSVP-TE Extensions for Associated Bidirectional Label Switched Paths (LSPs)
Associated Bidirectional LSPs, RSVP-TE Style β¨
RFC 7551: RSVP-TE Extensions for Associated Bidirectional Label Switched Paths (LSPs) π
Okay bestie, here's the whole vibe check on the title block π This is RFC 7551, published in May 2015 as a Standards Track document, with ISSN 2070-1721. The authors are F. Zhang (Huawei, editor), R. Jing (China Telecom), and R. Gandhi (Cisco Systems, editor). It doesn't list anything it obsoletes or updates π¦
Abstract
This document describes Resource Reservation Protocol (RSVP) extensions that bind two point-to-point unidirectional Label Switched Paths (LSPs) into one associated bidirectional LSP π The association happens through new Association Types used in ASSOCIATION and in Extended ASSOCIATION Objects. One type allows independent provisioning of the associated bidirectional LSPs on both sides, and the other allows single-sided provisioning. The REVERSE_LSP Object lets a single endpoint trigger creation of the reverse LSP and set its parameters in the single-sided case. Main character energy π
Status of This Memo
This is an Internet Standards Track document. π§
It's a product of the Internet Engineering Task Force (IETF), it represents the consensus of the IETF community, it got public review, and the Internet Engineering Steering Group (IESG) approved it for publication. More on Internet Standards is in Section 2 of RFC 5741 π
For the current status, errata, and feedback info, check http://www.rfc-editor.org/info/rfc7551 πΈ
Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved. π
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as in effect on the date of publication. Please read these carefully, because they spell out your rights and restrictions for this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they come without warranty as described in the Simplified BSD License βοΈ
Table of Contents
1. Introduction ....................................................4
2. Conventions Used in This Document ...............................5
2.1. Key Word Definitions .......................................5
2.2. Reverse Unidirectional LSPs ................................5
2.3. Message Formats ............................................5
3. Overview ........................................................6
3.1. Provisioning Model Overview ................................6
3.1.1. Single-Sided Provisioning ...........................6
3.1.2. Double-Sided Provisioning ...........................6
3.2. Association Signaling Overview .............................6
3.2.1. Single-Sided Provisioning ...........................7
3.2.2. Double-Sided Provisioning ...........................7
3.3. Asymmetric Bandwidth Signaling Overview ....................8
3.3.1. Single-Sided Provisioning ...........................8
3.3.2. Double-Sided Provisioning ...........................8
3.4. Recovery LSP Overview ......................................8
4. Message and Object Definitions ..................................9
4.1. RSVP Message Formats .......................................9
4.2. ASSOCIATION Object .........................................9
4.3. Extended ASSOCIATION Object ...............................10
4.4. REVERSE_LSP Object Definition .............................11
4.4.1. REVERSE_LSP Object Format ..........................11
4.4.2. REVERSE_LSP Subobjects .............................11
5. Processing Rules ...............................................12
5.1. Rules for ASSOCIATION Object ..............................12
5.1.1. Compatibility for ASSOCIATION Object ...............14
5.2. Rules for REVERSE_LSP Object ..............................14
5.2.1. Compatibility for REVERSE_LSP Object ...............16
6. IANA Considerations ............................................16
6.1. Association Types .........................................16
6.2. REVERSE_LSP Object ........................................16
6.3. Reverse LSP Failure PathErr Sub-code ......................17
7. Security Considerations ........................................17
8. References .....................................................18
8.1. Normative References ......................................18
8.2. Informative References ....................................19
Acknowledgements ..................................................20
Contributors ......................................................20
Authors' Addresses ................................................20
1. Introduction β¨
Okay so the MPLS Transport Profile (MPLS-TP) requirements document [RFC5654] says MPLS-TP MUST support associated bidirectional point-to-point Label Switched Paths (LSPs) π¦ Those requirements live in Section 2.1 ("General Requirements") of that doc, and here are the bits that matter, quoted pretty much as-is:
7. MPLS-TP MUST support associated bidirectional point-to-point
LSPs.
11. The end points of an associated bidirectional LSP MUST be aware
of the pairing relationship of the forward and reverse LSPs used
to support the bidirectional service.
12. Nodes on the LSP of an associated bidirectional LSP where both
the forward and backward directions transit the same node in the
same (sub)layer as the LSP SHOULD be aware of the pairing
relationship of the forward and the backward directions of the
LSP.
50. The MPLS-TP control plane MUST support establishing associated
bidirectional P2P LSP including configuration of protection
functions and any associated maintenance functions.
The same requirements are repeated in [RFC6373] π
Associated bidirectional LSPs are also handy for protection-switching of Operations, Administration, and Maintenance (OAM) messages that need a return path π₯
Different applications, like Internet services and OAM return paths, can need different upstream and downstream bandwidth π [RFC5654] covers this with an asymmetric bandwidth requirement in Section 2.1 ("General Requirements"), which goes like this:
14. MPLS-TP MUST support bidirectional LSPs with asymmetric
bandwidth requirements, i.e., the amount of reserved bandwidth
differs between the forward and backward directions.
The approach for asymmetric bandwidth co-routed bidirectional LSPs is defined in [RFC6387] π
The association method and the matching Resource Reservation Protocol (RSVP) ASSOCIATION Object are defined in [RFC4872], [RFC4873], and [RFC6689]. In that world, the ASSOCIATION Object ties a recovery LSP to the LSP it protects, but it's also broadly useful as a way to associate RSVP states π§ [RFC6780] defines the Extended ASSOCIATION Objects, which can be applied more generally for this. This document uses the term "(Extended) ASSOCIATION Objects" to mean the ASSOCIATION Objects from [RFC4872] and the Extended ASSOCIATION Objects from [RFC6780] together π
This document specifies how to bind two reverse unidirectional LSPs into an associated bidirectional LSP π¦ The association is made by defining new Association Types for use in (Extended) ASSOCIATION Objects. One type enables independent provisioning of the associated bidirectional LSPs, and the other enables single-sided provisioning. The REVERSE_LSP Object lets a single endpoint trigger creation of the reverse LSP and specify its parameters in the single-sided case. For example, the REVERSE_LSP Object allows asymmetric upstream and downstream bandwidths for the associated bidirectional LSP πΈ
2. Conventions Used in This Document π
2.1. Key Word Definitions
The key words "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] π
2.2. Reverse Unidirectional LSPs
Two reverse unidirectional LSPs get set up in opposite directions between a pair of source and destination nodes, and together they form an associated bidirectional LSP π«Ά A reverse unidirectional LSP starts on the same node where the forward unidirectional LSP ends, and it ends on the same node where the forward unidirectional LSP starts π
2.3. Message Formats
This document uses the Routing Backus-Naur Form (RBNF) to define message formats, as described in [RFC5511] β¨
3. Overview π
3.1. Provisioning Model Overview
This section gives an overview and definition of the models for provisioning associated bidirectional LSPs π
The forward and reverse unidirectional LSPs of an associated bidirectional LSP get established, monitored, and protected independently, as [RFC5654] specifies π¦ Configuration info for the LSPs can be given at one or both endpoints. Depending on the method, there are two models for creating an associated bidirectional LSP: single-sided provisioning and double-sided provisioning β¨
3.1.1. Single-Sided Provisioning
For single-sided provisioning, the Traffic Engineering (TE) tunnel is configured on only one endpoint π§ The initiating endpoint starts an LSP for this tunnel, with the (Extended) ASSOCIATION and REVERSE_LSP Objects inserted in the Path message. The other endpoint then creates the matching reverse TE tunnel and signals the reverse LSP in response, using info from the REVERSE_LSP Object and other objects in the Path message it received π₯
3.1.2. Double-Sided Provisioning
For double-sided provisioning, two unidirectional TE tunnels are configured independently, one on each endpoint π The LSPs for those tunnels get signaled with (Extended) ASSOCIATION Objects inserted in the Path message by both endpoints, so the two LSPs know they're meant to be associated into one bidirectional LSP π
π part 1 of 4 done, part 2 is coming next bestie π
3.2. Association Signaling Overview π
okay so this bit is the overview of association signaling for the associated bidirectional LSPs β¨
There are three scenarios for binding two unidirectional LSPs together into one associated bidirectional LSP. they're:
- Neither unidirectional LSP exists, and both must be established.
- Both unidirectional LSPs exist, but the association must be established.
- One LSP exists, but the reverse associated LSP must be established.
The next sections walk through the provisioning models for each of these scenarios π
Path Computation Element (PCE)-based approaches [RFC4655] may be used for path computation of an associated bidirectional LSP. However, these approaches are outside the scope of this document. that's a whole other story, bestie π§
Let's look at the topology in Figure 1. LSP1 goes from node A to B and takes the path A,D,B, and LSP2 goes from node B to A and takes the path B,D,C,A. Once these two LSPs are established and associated, they form an associated bidirectional LSP between nodes A and B π¦
LSP1 -->
A-------D-------B
\ / <-- LSP2
\ /
\ /
C
Figure 1: An Example of Associated Bidirectional LSP
3.2.1. Single-Sided Provisioning π
okay, so in the single-sided model, creating reverse LSP1 (from Figure 1) gets triggered by LSP2, or creating reverse LSP2 gets triggered by LSP1. When the creation of reverse LSP2 is triggered by LSP1, LSP1 gets provisioned first at node A (or refreshed, if LSP1 already exists). Then LSP1 is signaled with an (Extended) ASSOCIATION, and REVERSE_LSP Objects get inserted in the Path message. The Association Type shows single-sided provisioning. Once node B receives this Path message for LSP1, it establishes reverse LSP2. The (Extended) ASSOCIATION Object inserted in LSP2's Path message is the same one received in LSP1's Path message π
A similar procedure happens if LSP2 is provisioned first at node B, and the creation of reverse LSP1 at node A is triggered by LSP2. In both scenarios, the two unidirectional LSPs get bound together into an associated bidirectional LSP based on identical (Extended) ASSOCIATION Objects in their two Path messages. iconic consistency π
3.2.2. Double-Sided Provisioning π«Ά
for the double-sided model, LSP1 and LSP2 from Figure 1 are both signaled independently, and each one gets an (Extended) ASSOCIATION Object inserted in its Path message. The Association Type that's included says double-sided provisioning. Here, the two unidirectional LSPs are bound together into an associated bidirectional LSP based on identical (Extended) ASSOCIATION Objects in their two Path messages. Across all three scenarios from Section 3.2, the LSPs picked for the association are provisioned by the management action applied at both endpoints π₯
3.3. Asymmetric Bandwidth Signaling Overview π
this section gives an overview of the methods for signaling asymmetric upstream and downstream bandwidths for the associated bidirectional LSPs π
3.3.1. Single-Sided Provisioning π¦
a new REVERSE_LSP Object for the single-sided model is defined in this document, in Section 4.4. The REVERSE_LSP Object lets the initiating node of the single-sided provisioned LSP trigger creation of the reverse LSP on the remote node. With the single-sided model, a SENDER_TSPEC Object can be added in the REVERSE_LSP Object as a subobject in the initiating LSP's Path message, so you can specify a different bandwidth for the reverse LSP. As described in Section 4.4, adding the REVERSE_LSP Object also lets the initiating node control other aspects of the reverse LSP (like its path) by including other objects in a REVERSE_LSP Object πΈ
Back to Figure 1, where creation of reverse LSP2 is triggered by LSP1. Node A signals LSP1 with the (Extended) ASSOCIATION Object, with the Association Type indicating single-sided provisioning, and inserts a SENDER_TSPEC subobject for use by LSP2 in the REVERSE_LSP Object in the Path message. Node B then establishes LSP2 in the reverse direction using the asymmetric bandwidth that LSP1 specified, and it lets node A control the reverse LSP2 π§
3.3.2. Double-Sided Provisioning π
with the double-sided model, the two unidirectional LSPs get established with separate bandwidths, which may or may not be identical. These LSPs are associated purely based on the identical contents of their (Extended) ASSOCIATION Objects, nothing else π
3.4. Recovery LSP Overview π«§
Each unidirectional LSP in the bidirectional LSP recovers independently [RFC5654], based on the parameters signaled in its own RSVP Path message π
Recovery LSP association is based on the identical content of the (Extended) ASSOCIATION Objects signaled in their Path messages during the initial LSP setup, for both single-sided and double-sided provisioning. As defined in [RFC6780], a single LSP can carry multiple ASSOCIATION Objects in its signaling β¨
4. Message and Object Definitions πΈ
4.1. RSVP Message Formats π
this section presents the RSVP message formats as modified by this document. Unmodified RSVP message formats aren't listed here π
The format of a Path message looks like this:
<Path Message> ::= <Common Header> [ <INTEGRITY> ]
[ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
[ <MESSAGE_ID> ]
<SESSION> <RSVP_HOP>
<TIME_VALUES>
[ <EXPLICIT_ROUTE> ]
<LABEL_REQUEST>
[ <PROTECTION> ]
[ <LABEL_SET> ... ]
[ <SESSION_ATTRIBUTE> ]
[ <NOTIFY_REQUEST> ... ]
[ <ADMIN_STATUS> ]
[ <ASSOCIATION> ... ]
[ <REVERSE_LSP> ... ]
[ <POLICY_DATA> ... ]
<sender descriptor>
The format of the <sender descriptor> isn't modified by this document π¦
4.2. ASSOCIATION Object π
the ASSOCIATION Object gets populated using the rules below for associating two reverse unidirectional LSPs into an associated bidirectional LSP β¨
Association Types:
in order to bind two reverse unidirectional LSPs into an associated bidirectional LSP, the Association Type MUST be set to indicate either single-sided or double-sided LSPs. The new Association Types are defined like this:
Value Type
----- -----
3 Double-Sided Associated Bidirectional LSP (D)
4 Single-Sided Associated Bidirectional LSP (A)
Association ID:
for both single-sided and double-sided provisioning, Association ID MUST be set to a value assigned by the node that originates the association for the bidirectional LSP π«Ά
Association Source:
Association Source MUST be set to an address selected by the node that originates the association for the bidirectional LSP. For example, this may be a management entity or, in the case of single-sided provisioning, an address assigned to the node that originates the LSP π₯
4.3. Extended ASSOCIATION Object π
the (Extended) ASSOCIATION Object gets populated using the rules below for associating two reverse unidirectional LSPs into a bidirectional LSP π
The Association Type, Association ID, and Association Source MUST be set as defined for the ASSOCIATION Object in Section 4.1. π¦
Global Association Source:
for both single-sided and double-sided provisioning, Global Association Source, when used, MUST be set to the Global_ID [RFC6370] of the node that originates the association for the bidirectional LSP πΈ
Extended Association ID:
for both single-sided and double-sided provisioning, Extended Association ID, when used, MUST be set to a value selected by the node that originates the association for the bidirectional LSP π§
4.4. REVERSE_LSP Object Definition π
4.4.1. REVERSE_LSP Object Format π
The REVERSE_LSP Object is carried in the Path message of a forward LSP to provide information for the reverse LSP to use. It also shows that the LSP is the forward LSP of a single-sided associated bidirectional LSP π
The Object has the following format:
Class_Num = 203, C_Type = 1.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// (Subobjects) //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.4.2. REVERSE_LSP Subobjects β¨
Subobjects override the default contents of a Path message for a reverse LSP; see Section 5.2. The contents of a REVERSE_LSP Object are zero or more variable-length subobjects that have the same format as RSVP Objects; see Section 3.1.2 of [RFC2205]. Any object that may be carried in a Path message MAY be carried in the REVERSE_LSP Object. Subobject ordering MUST follow any Path message Object ordering requirements π
Here are some examples of the Path message Objects that can go in the REVERSE_LSP Object (but the list isn't limited to these) π
SENDER_TSPEC[RFC2205]EXPLICIT_ROUTEObject (ERO) [RFC3209]SESSION_ATTRIBUTEObject [RFC3209]ADMIN_STATUSObject [RFC3473]LSP_REQUIRED_ATTRIBUTESObject [RFC5420]PROTECTIONObject [RFC3473] [RFC4872]
5. Processing Rules π
generally speaking, the processing rules for the ASSOCIATION Object are as specified in [RFC4872], and the ones for the Extended ASSOCIATION Object are as specified in [RFC6780]. The next sections describe the rules for processing (Extended) ASSOCIATION Objects for both double-sided and single-sided associated bidirectional LSPs, plus REVERSE_LSP Objects for single-sided associated bidirectional LSPs π«Ά
5.1. Rules for ASSOCIATION Object π
okay so this section is all about how two one-way LSPs get glued together into one associated bidirectional LSP π¦, and the glue is an (Extended) ASSOCIATION Object β¨
The actual matching rules for figuring out which LSPs belong together live in [RFC6780] πΈ. [RFC6780] says that if there are no special matching rules for a given Association Type, the included (Extended) ASSOCIATION Objects in the LSPs MUST be identical for an association to exist. So they have to be exact matches π―ββοΈ. This document doesn't add any special matching rules for the new Association Types, so LSP association works exactly the way [RFC6780] describes π .
As [RFC6780] explains, LSP associations can be upstream or downstream initiated, and the (Extended) ASSOCIATION Objects in Path or Resv Messages say which one it is. Bidirectional LSP associations are always upstream initiated π, so the Association Types defined here are only meant to be read in Path Messages. These types SHOULD NOT be used in ASSOCIATION Objects carried in Resv messages and SHOULD be ignored if present π.
To say "hey, this is an associated bidirectional LSP" π£, the ingress node MUST insert an (Extended) ASSOCIATION Object into the Path message of the unidirectional LSP that's part of the associated bidirectional LSP it starts. If either Global Association Source or Extended Association Address is required, then an Extended ASSOCIATION Object [RFC6780] MUST be inserted in the Path message. Otherwise, an ASSOCIATION Object MAY be used. (Extended) ASSOCIATION Objects with both single-sided and double-sided Association Types MUST NOT be added or sent in the same Path message π«. Not allowed, bestie.
The ingress node MUST set the Association Type field in the (Extended) ASSOCIATION Object to "Single-Sided Associated Bidirectional LSP" when single-sided provisioning is used, and to "Double-Sided Associated Bidirectional LSP" when double-sided provisioning is used π.
A transit node MAY identify the unidirectional LSPs of an associated bidirectional LSP based on (Extended) ASSOCIATION Objects, with the Association Type values defined in this document, carried in Path messages π. Obviously, this only works when the LSPs actually transit the node. As mentioned above, these associations are made per the rules defined in [RFC6780].
Egress nodes that support the Association Types defined in this document identify the unidirectional LSPs of an associated bidirectional LSP based on (Extended) ASSOCIATION Objects carried in Path messages π. Note that an ingress node will normally be the ingress for one of the unidirectional LSPs that make up an associated bidirectional LSP. When an egress node receives a Path message containing an (Extended) ASSOCIATION Object with one of the Association Types defined in this document, it MUST attempt to identify other LSPs (including ones for which it is an ingress node) that the LSP being processed is associated with. As defined above, these associations are made per the rules defined in [RFC6780]. An LSP that isn't associated at signaling time (for example, during rerouting or re-optimization) on an egress node is not necessarily considered an error condition π.
Teardown of an associated bidirectional LSP follows the standard procedures defined in [RFC3209] and [RFC3473], either without or with the administrative status π§Ή. Generally, the teardown procedures of the unidirectional LSPs forming an associated bidirectional LSP are independent of each other, so it's possible that one LSP does a graceful teardown with administrative status while the reverse LSP gets torn down without administrative status (using PathTear/ResvTear/PathErr with state removal). See Section 5.2 for additional rules related to LSPs established using single-sided provisioning π.
When an LSP signaled with a Path message containing an (Extended) ASSOCIATION Object with an Association Type defined in this document is torn down, the processing node SHALL remove the binding of the LSP to any previously identified associated bidirectional LSP π.
No additional processing is needed for Path messages with an (Extended) ASSOCIATION Object containing an Association Type field set to "Double-Sided Associated Bidirectional LSP" π.
5.1.1. Compatibility for ASSOCIATION Object π§©
The ASSOCIATION Object was defined in [RFC4872] and the Extended ASSOCIATION Object was defined in [RFC6780], and both use class numbers in the form 11bbbbbb. That's what keeps things compatible with nodes that don't support them π«Ά. Per [RFC2205], those nodes will ignore the object but forward it without modification.
Operators who want to use a function supported by a particular Association Type SHOULD ensure that the type is supported on any node that's expected to act on the association [RFC6780] π§.
An egress node that doesn't support the Association Types defined in this document is expected to return a PathErr with Error Code "Admission Control Failure" (1) [RFC2205] and Sub-code "Bad Association Type" (5) [RFC4872] π¨.
LSP recovery as defined in [RFC4872] and [RFC4873] is not impacted by this document π. The recovery mechanisms in [RFC4872] and [RFC4873] rely on (Extended) ASSOCIATION Objects too, but they use a different value for Association Type. Multiple ASSOCIATION Objects can be present in the LSP Path message and can coexist with the procedures defined in this document π€.
5.2. Rules for REVERSE_LSP Object πͺ
When a node initiates setup of an LSP using a Path message containing an ASSOCIATION or Extended ASSOCIATION Object, with the Association Type set to "Single-Sided Associated Bidirectional LSP", the Path message MUST carry the REVERSE_LSP Object to trigger creation of a reverse LSP on the egress node π.
The REVERSE_LSP subobject MAY contain any of the objects that the initiating node wants included in the Path message for the associated reverse LSP π. The REVERSE_LSP Object SHOULD NOT be included in a REVERSE_LSP Object.
A transit node that receives a valid Path message containing a REVERSE_LSP Object MUST forward the REVERSE_LSP Object unchanged in the outgoing Path message π«‘.
An egress node that receives a Path message containing an REVERSE_LSP Object MUST verify that the Path message contains an ASSOCIATION or Extended ASSOCIATION Object with the Association Type set to "Single-Sided Associated Bidirectional LSP". If it doesn't, the Path message MUST NOT trigger a reverse LSP π
ββοΈ. This verification failure SHOULD NOT trigger any RSVP message, but it can be logged locally and perhaps reported through network management mechanisms π.
Once validated, the egress node MUST create an LSP in the reverse direction or reject the Path message β
. If creating the reverse LSP fails, the egress node MUST return a PathErr with Error Code "Admission Control Failure" (1) [RFC2205] and Sub-code "Reverse LSP Failure" (6) defined in this document π₯. Note that normal Resv processing SHOULD NOT be impacted by the presence of an ASSOCIATION Object with an Association Type set to "Single-Sided Associated Bidirectional LSP".
The egress node MUST use the subobjects contained in the REVERSE_LSP Object for initiating the reverse LSP π―. When a subobject is not present in the received REVERSE_LSP Object, the egress node SHOULD initiate the reverse LSP based on the information in the received Path message of the forward LSP, as follows:
- The egress node SHOULD copy the information from the received SESSION_ATTRIBUTE, CLASS_TYPE, LABEL_REQUEST, ASSOCIATION, ADMIN_STATUS, and PROTECTION Objects in the forward LSP Path message to form the Path message of the reverse LSP when the object is not present in the received REVERSE_LSP Object π.
- The IP address in the reverse LSP's SESSION Object SHOULD be set to the IP address carried in the received SENDER_TEMPLATE Object; and conversely, the IP address in the SENDER_TEMPLATE Object SHOULD be set to the IP address carried in the received SESSION Object. There are no additional requirements related to the IDs carried in the SESSION and SENDER_TEMPLATE Objects π.
- When the forward LSP Path message contains a RECORD_ROUTE Object, the egress node SHOULD include the received RECORD_ROUTE Object in the reverse LSP Path message. Local node information SHOULD also be recorded per standard Path message processing πΊοΈ.
- There are no specific requirements related to other objects π€·ββοΈ.
The resulting Path message is used to create the reverse LSP. From this point on, standard Path message processing is used to process the resulting Path message π€οΈ.
Note that the contents of a forward LSP, including a carried REVERSE_LSP Object, may change over the life of an LSP, and such changes MUST result in corresponding changes in the reverse LSP π. In particular, any object or subobject that was copied during creation of the initial reverse LSP's Path message MUST be copied when it's modified in the forward LSP, and a trigger Path message MUST be processed β‘.
The removal of the REVERSE_LSP Object in the received Path message SHOULD cause the egress node to tear down any previously established reverse LSP π§Ό.
When the egress node receives a PathTear message for the forward LSP, or whenever the forward LSP is torn down, the node MUST remove the associated reverse LSP using standard PathTear message processing π. Teardown of the reverse LSP for other reasons SHOULD NOT trigger removal of the initiating LSP, but it SHOULD result in the egress node sending a PathErr with Error Code "Admission Control Failure" (1) [RFC2205] and Sub-code "Reverse LSP Failure" (6) defined in this document π©.
5.2.1. Compatibility for REVERSE_LSP Object
The REVERSE_LSP Object is defined with class numbers in the form 11bbbbbb, which keeps it compatible with non-supporting nodes π«Ά. Per [RFC2205], those nodes will ignore the object but forward it without modification.
6. IANA Considerations π
IANA has registered values for the namespace defined in this document, and they're summarized in this section π.
6.1. Association Types
IANA maintains the "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Parameters" registry (see <http://www.iana.org/assignments/gmpls-sig-parameters>). The "Association Type" subregistry is included in this registry ποΈ.
This registry has been updated with new Association Types for ASSOCIATION and Extended ASSOCIATION Objects defined in this document, as follows π:
Value Name Reference
3 Double-Sided Associated Bidirectional LSP (D) Section 4.2
4 Single-Sided Associated Bidirectional LSP (A) Section 4.2
6.2. REVERSE_LSP Object
IANA maintains the "Resource Reservation Protocol (RSVP) Parameters" registry (see <http://www.iana.org/assignments/rsvp-parameters>). The "Class Names, Class Numbers, and Class Types" subregistry is included in this registry π§Ύ.
This registry has been extended with a new Class Number (Class-Num) and Class Type (C-type) for the RSVP REVERSE_LSP Object, requested in the 11bbbbbb range defined in this document, as follows π:
Class Number Class Name Reference
203 REVERSE_LSP Section 4.4
o REVERSE_LSP : Class Type or C-type = 1
6.3. Reverse LSP Failure PathErr Sub-code π
okay bestie, IANA keeps the "Resource Reservation Protocol (RSVP) Parameters" registry ποΈ at <http://www.iana.org/assignments/rsvp-parameters>. Inside it is the "Error Codes and Globally-Defined Error Value Sub-Codes" subregistry, and this document adds a new PathErr Sub-code to it. π
Error Code = 01: "Admission Control Failure" (see [RFC2205])
o "Reverse LSP Failure" (6)
7. Security Considerations π
okay so this doc adds two new Association Types to the (Extended) ASSOCIATION Object: Double-Sided Associated Bidirectional LSP and Single-Sided Associated Bidirectional LSP. π¦ By themselves, these types don't add any extra info to signaling, and the related security stuff is already covered in RFC 6780. π«Ά
The REVERSE_LSP Object rides in the Path message of a forward LSP that belongs to a Single-Sided Associated Bidirectional LSP. π§ It can carry parameters for the reverse LSP, so yes, more info can get conveyed, but it's not fundamentally different from what's already in a bidirectional LSP message. β¨ Processing these messages is already subject to local policy and the security discussions that come with it. π₯
For the full tea on MPLS and GMPLS security issues, check the MPLS/GMPLS security framework in [RFC5920]. π
8. References π
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, DOI 10.17487/RFC2205,
September 1997, <http://www.rfc-editor.org/info/rfc2205>.
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<http://www.rfc-editor.org/info/rfc3209>.
[RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label
Switching (GMPLS) Signaling Resource ReserVation Protocol-
Traffic Engineering (RSVP-TE) Extensions", RFC 3473,
DOI 10.17487/RFC3473, January 2003,
<http://www.rfc-editor.org/info/rfc3473>.
[RFC4872] Lang, J., Ed., Rekhter, Y., Ed., and D. Papadimitriou,
Ed., "RSVP-TE Extensions in Support of End-to-End
Generalized Multi-Protocol Label Switching (GMPLS)
Recovery", RFC 4872, DOI 10.17487/RFC4872, May 2007,
<http://www.rfc-editor.org/info/rfc4872>.
[RFC4873] Berger, L., Bryskin, I., Papadimitriou, D., and A. Farrel,
"GMPLS Segment Recovery", RFC 4873, DOI 10.17487/RFC4873,
May 2007, <http://www.rfc-editor.org/info/rfc4873>.
[RFC5511] Farrel, A., "Routing Backus-Naur Form (RBNF): A Syntax
Used to Form Encoding Rules in Various Routing Protocol
Specifications", RFC 5511, DOI 10.17487/RFC5511, April
2009, <http://www.rfc-editor.org/info/rfc5511>.
[RFC6780] Berger, L., Le Faucheur, F., and A. Narayanan, "RSVP
ASSOCIATION Object Extensions", RFC 6780,
DOI 10.17487/RFC6780, October 2012,
<http://www.rfc-editor.org/info/rfc6780>.
8.2. Informative References
[RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path
Computation Element (PCE)-Based Architecture", RFC 4655,
DOI 10.17487/RFC4655, August 2006,
<http://www.rfc-editor.org/info/rfc4655>.
[RFC5420] Farrel, A., Ed., Papadimitriou, D., Vasseur, JP., and A.
Ayyangarps, "Encoding of Attributes for MPLS LSP
Establishment Using Resource Reservation Protocol Traffic
Engineering (RSVP-TE)", RFC 5420, DOI 10.17487/RFC5420,
February 2009, <http://www.rfc-editor.org/info/rfc5420>.
[RFC5654] Niven-Jenkins, B., Ed., Brungard, D., Ed., Betts, M., Ed.,
Sprecher, N., and S. Ueno, "Requirements of an MPLS
Transport Profile", RFC 5654, DOI 10.17487/RFC5654,
September 2009, <http://www.rfc-editor.org/info/rfc5654>.
[RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS
Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010,
<http://www.rfc-editor.org/info/rfc5920>.
[RFC6370] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport
Profile (MPLS-TP) Identifiers", RFC 6370,
DOI 10.17487/RFC6370, September 2011,
<http://www.rfc-editor.org/info/rfc6370>.
[RFC6373] Andersson, L., Ed., Berger, L., Ed., Fang, L., Ed., Bitar,
N., Ed., and E. Gray, Ed., "MPLS Transport Profile
(MPLS-TP) Control Plane Framework", RFC 6373,
DOI 10.17487/RFC6373, September 2011,
<http://www.rfc-editor.org/info/rfc6373>.
[RFC6387] Takacs, A., Berger, L., Caviglia, D., Fedyk, D., and J.
Meuric, "GMPLS Asymmetric Bandwidth Bidirectional Label
Switched Paths (LSPs)", RFC 6387, DOI 10.17487/RFC6387,
September 2011, <http://www.rfc-editor.org/info/rfc6387>.
[RFC6689] Berger, L., "Usage of the RSVP ASSOCIATION Object",
RFC 6689, DOI 10.17487/RFC6689, July 2012,
<http://www.rfc-editor.org/info/rfc6689>.
Acknowledgements π
the authors gave big thanks to Lou Berger and George Swallow for their great guidance on this work π«Ά. they also thanked Jie Dong for the discussion of the recovery LSP, Lamberto Sterling for his valuable comments about asymmetric bandwidth signaling, Attila Takacs for the discussion of the provisioning model, Siva Sivabalan, Eric Osborne, and Robert Sawaya for the ASSOCIATION Object discussions, and Matt Hartley for useful suggestions on the document. β¨ Extra love to Bo Wu, Xihua Fu, and Lizhong Jin for the initial discussions, Wenjuan He for the prototype implementation, and Lou Berger, Daniel King, and Deborah Brungard for reviewing the document. π
Contributors π
Fan Yang
ZTE
EMail: yang.fan240347@gmail.com
Weilian Jiang
ZTE
EMail: jiang.weilian@gmail.com
Authors' Addresses π¦
Fei Zhang (editor)
Huawei
EMail: zhangfei7@huawei.com
Ruiquan Jing
China Telecom
EMail: jingrq@ctbri.com.cn
Rakesh Gandhi (editor)
Cisco Systems
EMail: rgandhi@cisco.com
π¦ where this page comes from
- ietf: rfc7551 2015-05
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms