diff options
Diffstat (limited to 'doc/rfc/rfc4974.txt')
-rw-r--r-- | doc/rfc/rfc4974.txt | 1739 |
1 files changed, 1739 insertions, 0 deletions
diff --git a/doc/rfc/rfc4974.txt b/doc/rfc/rfc4974.txt new file mode 100644 index 0000000..1bd2dde --- /dev/null +++ b/doc/rfc/rfc4974.txt @@ -0,0 +1,1739 @@ + + + + + + +Network Working Group D. Papadimitriou +Request for Comments: 4974 Alcatel +Updates: 3473 A. Farrel +Category: Standards Track Old Dog Consulting + August 2007 + + + Generalized MPLS (GMPLS) RSVP-TE Signaling Extensions + in Support of Calls + +Status of This Memo + + This document specifies an Internet standards track protocol for the + Internet community, and requests discussion and suggestions for + improvements. Please refer to the current edition of the "Internet + Official Protocol Standards" (STD 1) for the standardization state + and status of this protocol. Distribution of this memo is unlimited. + +Copyright Notice + + Copyright (C) The IETF Trust (2007). + +Abstract + + In certain networking topologies, it may be advantageous to maintain + associations between endpoints and key transit points to support an + instance of a service. Such associations are known as Calls. + + A Call does not provide the actual connectivity for transmitting user + traffic, but only builds a relationship by which subsequent + Connections may be made. In Generalized MPLS (GMPLS) such + Connections are known as Label Switched Paths (LSPs). + + This document specifies how GMPLS Resource Reservation Protocol - + Traffic Engineering (RSVP-TE) signaling may be used and extended to + support Calls. These mechanisms provide full and logical + Call/Connection separation. + + The mechanisms proposed in this document are applicable to any + environment (including multi-area), and for any type of interface: + packet, layer-2, time-division multiplexed, lambda, or fiber + switching. + + + + + + + + + +Papadimitriou & Farrel Standards Track [Page 1] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +Table of Contents + + 1. Introduction ....................................................3 + 1.1. Applicability to ASON ......................................4 + 2. Conventions Used in This document ...............................4 + 3. Requirements ....................................................4 + 3.1. Basic Call Function ........................................4 + 3.2. Call/Connection Separation .................................5 + 3.3. Call Segments ..............................................5 + 4. Concepts and Terms ..............................................5 + 4.1. What Is a Call? ............................................5 + 4.2. A Hierarchy of Calls, Connections, Tunnels, and LSPs .......6 + 4.3. Exchanging Access Link Capabilities ........................6 + 4.3.1. Network-Initiated Calls .............................7 + 4.3.2. User-Initiated Calls ................................7 + 4.3.3. Utilizing Call Setup ................................8 + 5. Protocol Extensions for Calls and Connections ...................8 + 5.1. Call Setup and Teardown ....................................8 + 5.2. Call Identification ........................................9 + 5.2.1. Long Form Call Identification .......................9 + 5.2.2. Short Form Call Identification ......................9 + 5.2.3. Short Form Call ID Encoding ........................10 + 5.3. LINK_CAPABILITY Object ....................................11 + 5.4. Revised Message Formats ...................................12 + 5.4.1. Notify Message .....................................12 + 5.5. ADMIN_STATUS Object .......................................13 + 6. Procedures in Support of Calls and Connections .................14 + 6.1. Call/Connection Setup Procedures ..........................14 + 6.2. Call Setup ................................................14 + 6.2.1. Accepting Call Setup ...............................16 + 6.2.2. Call Setup Failure and Rejection ...................16 + 6.3. Adding a Connections to a Call ............................17 + 6.3.1. Adding a Reverse Direction LSP to a Call ...........18 + 6.4. Call-Free Connection Setup ................................18 + 6.5. Call Collision ............................................18 + 6.6. Call/Connection Teardown ..................................19 + 6.6.1. Removal of a Connection from a Call ................20 + 6.6.2. Removal of the Last Connection from a Call .........20 + 6.6.3. Teardown of an "Empty" Call ........................20 + 6.6.4. Attempted Teardown of a Call with Existing + Connections ........................................20 + 6.6.5. Teardown of a Call from the Egress .................21 + 6.7. Control Plane Survivability ...............................21 + 7. Applicability of Call and Connection Procedures ................22 + 7.1. Network-Initiated Calls ...................................22 + 7.2. User-Initiated Calls ......................................23 + 7.3. External Call Managers ....................................23 + 7.3.1. Call Segments ......................................23 + + + +Papadimitriou & Farrel Standards Track [Page 2] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + 8. Non-Support of Call ID .........................................24 + 8.1. Non-Support by External Call Managers .....................24 + 8.2. Non-Support by Transit Node ...............................24 + 8.3. Non-Support by Egress Node ................................25 + 9. Security Considerations ........................................25 + 9.1. Call and Connection Security Considerations ...............25 + 10. IANA Considerations ...........................................26 + 10.1. RSVP Objects .............................................26 + 10.2. RSVP Error Codes and Error Values ........................27 + 10.3. RSVP ADMIN_STATUS Object Bits ............................27 + 11. Acknowledgements ..............................................27 + 12. References ....................................................28 + 12.1. Normative References .....................................28 + 12.2. Informative References ...................................29 + +1. Introduction + + This document defines protocol procedures and extensions to support + Calls within Generalized MPLS (GMPLS). + + A Call is an association between endpoints and possibly between key + transit points (such as network boundaries) in support of an instance + of a service. The end-to-end association is termed a "Call", and the + association between two transit points or between an endpoint and a + transit point is termed a "Call Segment". An entity that processes a + Call or Call Segment is called a "Call Manager". + + A Call does not provide the actual connectivity for transmitting user + traffic, but only builds a relationship by which subsequent + Connections may be made. In GMPLS, such Connections are known as + Label Switched Paths (LSPs). This document does not modify + Connection setup procedures defined in [RFC3473], [RFC4208], and + [STITCH]. Connections set up as part of a Call follow the rules + defined in these documents. + + A Call may be associated with zero, one, or more than one Connection, + and a Connection may be associated with zero or one Call. Thus, full + and logical Call/Connection separation is needed. + + An example of the requirements for Calls can be found in the ITU-T's + Automatically Switched Optical Network (ASON) architecture [G.8080] + and specific requirements for support of Calls in this context can be + found in [RFC4139]. Note, however, that while the mechanisms + described in this document meet the requirements stated in [RFC4139], + they have wider applicability. + + + + + + +Papadimitriou & Farrel Standards Track [Page 3] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + The mechanisms defined in this document are equally applicable to any + packet (PSC) interface, layer-2 interfaces (L2SC), TDM capable + interfaces, LSC interfaces, or FSC interfaces. The mechanisms and + protocol extensions are backward compatible, and can be used for Call + management where only the Call Managers need to be aware of the + protocol extensions. + +1.1. Applicability to ASON + + [RFC4139] details the requirements on GMPLS signaling to satisfy the + ASON architecture described in [G.8080]. The mechanisms described in + this document meet the requirements for Calls as described in + Sections 4.2 and 4.3 of [RFC4139] and the additional Call-related + requirements in Sections 4.4, 4.7, 5, and 6 of [RFC4139]. + + [ASON-APPL] describes the applicability of GMPLS protocols to the + ASON architecture. + +2. Conventions Used in This document + + 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]. + + In addition, the reader is assumed to be familiar with the + terminology used in [RFC3471], [RFC3473], [RFC3477], and [RFC3945]. + +3. Requirements + +3.1. Basic Call Function + + The Call concept is used to deliver the following capabilities: + + - Verification and identification of the Call initiator (prior to + LSP setup). + + - Support of virtual concatenation with diverse path component LSPs. + + - Association of multiple LSPs with a single Call (note aspects + related to recovery are detailed in [RFC4426] and [GMPLS-E2E]). + + - Facilitation of control plane operations by allowing an + operational status change of the associated LSP. + + Procedures and protocol extensions to support Call setup, and the + association of Calls with Connections are described in Section 5 and + onwards of this document. + + + + +Papadimitriou & Farrel Standards Track [Page 4] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +3.2. Call/Connection Separation + + Full and logical Call and Connection separation is required. That + is: + + - It MUST be possible to establish a Connection without dependence + on a Call. + + - It MUST be possible to establish a Call without any associated + Connections. + + - It MUST be possible to associate more than one Connection with a + Call. + + - Removal of the last Connection associated with a Call SHOULD NOT + result in the automatic removal of the Call except as a matter of + local policy at the ingress of the Call. + + - Signaling of a Connection associated with a Call MUST NOT require + the distribution or retention of Call-related information (state) + within the network. + +3.3. Call Segments + + Call Segment capabilities MUST be supported. + + Procedures and (GMPLS) RSVP-TE signaling protocol extensions to + support Call Segments are described in Section 7.3.1 of this + document. + +4. Concepts and Terms + + The concept of a Call and a Connection are also discussed in the ASON + architecture [G.8080] and [RFC4139]. This section is not intended as + a substitute for those documents, but is a brief summary of the key + terms and concepts. + +4.1. What Is a Call? + + A Call is an agreement between endpoints possibly in cooperation with + the nodes that provide access to the network. Call setup may include + capability exchange, policy, authorization, and security. + + A Call is used to facilitate and manage a set of Connections that + provide end-to-end data services. While Connections require state to + be maintained at nodes along the data path within the network, Calls + do not involve the participation of transit nodes except to forward + the Call management requests as transparent messages. + + + +Papadimitriou & Farrel Standards Track [Page 5] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + A Call may be established and maintained independently of the + Connections that it supports. + +4.2. A Hierarchy of Calls, Connections, Tunnels, and LSPs + + Clearly, there is a hierarchical relationship between Calls and + Connections. One or more Connections may be associated with a Call. + A Connection may not be part of more than one Call. A Connection + may, however, exist without a Call. + + In GMPLS RSVP-TE [RFC3473], a Connection is identified with a GMPLS + TE Tunnel. Commonly, a Tunnel is identified with a single LSP, but + it should be noted that for protection, load balancing, and many + other functions, a Tunnel may be supported by multiple parallel LSPs. + The following identification reproduces this hierarchy. + + - Call IDs are unique within the context of the pair of addresses + that are the source and destination of the Call. + + - Tunnel IDs are unique within the context of the Session (that is + the destination of the Tunnel). Applications may also find it + convenient to keep the Tunnel ID unique within the context of a + Call. + + - LSP IDs are unique within the context of a Tunnel. + + Note that the Call_ID value of zero is reserved and MUST NOT be used + during LSP-independent Call establishment. + + Throughout the remainder of this document, the terms LSP and Tunnel + are used interchangeably with the term Connection. The case of a + Tunnel that is supported by more than one LSP is covered implicitly. + +4.3. Exchanging Access Link Capabilities + + In an overlay model, it is useful for the ingress node of an LSP to + know the link capabilities of the link between the network and the + remote overlay network. In the language of [RFC4208], the ingress + node can make use of information about the link between the egress + core node (CN) and the remote edge node (EN). We call this link the + egress network link. This information may allow the ingress node to + tailor its LSP request to fit those capabilities and to better + utilize network resources with regard to those capabilities. + + For example, this might be used in transparent optical networks to + supply information on lambda availability on egress network links, + or, where the egress CN is capable of signal regeneration, it might + provide a mechanism for negotiating signal quality attributes (such + + + +Papadimitriou & Farrel Standards Track [Page 6] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + as bit error rate). Similarly, in multi-domain routing environments, + it could be used to provide end-to-end selection of component links + (i.e., spatial attribute negotiation) where TE links have been + bundled based on technology specific attributes. + + In some circumstances, the Traffic Engineering Database (TED) may + contain sufficient information for decisions to be made about which + egress network link to use. In other circumstances, the TED might + not contain this information and Call setup may provide a suitable + mechanism to exchange information for this purpose. The Call- + responder may use the Call parameters to select a subset of the + available egress network links between the egress CN and the remote + EN, and may report these links and their capabilities on the Call + response so that the Call-initiator may select a suitable link. + + The sections that follow indicate the cases where the TED may be + used, and those where Call parameter exchange may be appropriate. + +4.3.1. Network-Initiated Calls + + Network-initiated Calls arise when the ingress (and correspondingly + the egress) lie within the network and there may be no need to + distribute additional link capability information over and above the + information distributed by the TE and GMPLS extensions to the IGP. + Further, it is possible that future extensions to these IGPs will + allow the distribution of more detailed information including optical + impairments. + +4.3.2. User-Initiated Calls + + User-initiated Calls arise when the ingress (and correspondingly the + egress) lie outside the network. Edge link information may not be + visible within the core network, nor (and specifically) at other edge + nodes. This may prevent an ingress from requesting suitable LSP + characteristics to ensure successful LSP setup. + + Various solutions to this problem exist, including the definition of + static TE links (that is, not advertised by a routing protocol) + between the CNs and ENs. Nevertheless, special procedures may be + necessary to advertise to the edge nodes outside of the network + information about egress network links without also advertising the + information specific to the contents of the network. + + In the future, when the requirements on the information that needs to + be supported are better understood, TE extensions to EGPs may be + defined to provide this function, and new rules for leaking TE + information between routing instances may be used. + + + + +Papadimitriou & Farrel Standards Track [Page 7] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +4.3.3. Utilizing Call Setup + + When IGP and EGP solutions are not available at the User-to-Network + Interface (UNI), there is still a requirement to have the knowledge + of the remote edge link capabilities at the local edge nodes. + + The Call setup procedure provides an opportunity to discover edge + link capabilities of remote edge nodes before LSP setup is attempted. + + - The Call-responder can return information on one or more egress + network links. The Call-responder could return a full list of the + available links with information about the link capabilities, or + it could filter the list to return information about only those + links that might be appropriate to support the Connections needed + by the Call. To do this second option, the Call-responder must + determine such appropriate links from information carried in the + Call request including destination of the Call, and the level of + service (bandwidth, protection, etc.) required. + + - On receiving a Call response, the Call-initiator must determine + paths for the Connections (LSPs) that it will set up. The way + that it does this is out of scope for this document since it is an + implementation-specific, algorithmic process. However, it can + take as input the information about the available egress network + links as supplied in the Call response. + + The LINK_CAPABILITY object is defined to allow this information to be + exchanged. The information that is included in this object is + similar to that distributed by GMPLS-capable IGPs (see [RFC4202]). + +5. Protocol Extensions for Calls and Connections + + This section describes the protocol extensions needed in support of + Call identification and management of Calls and Connections. + Procedures for the use of these protocol extensions are described in + Section 6. + +5.1. Call Setup and Teardown + + Calls are established independently of Connections through the use of + the Notify message. The Notify message is a targeted message and + does not need to follow the path of LSPs through the network. + + Simultaneous Call and Connection establishment (sometimes referred to + as piggybacking) is not supported. + + + + + + +Papadimitriou & Farrel Standards Track [Page 8] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +5.2. Call Identification + + As soon as the concept of a Call is introduced, it is necessary to + support some means of identifying the Call. This becomes + particularly important when Calls and Connections are separated and + Connections must contain some reference to the Call. + + A Call may be identified by a sequence of bytes that may have + considerable (but not arbitrary) length. A Call ID of 40 bytes would + not be unreasonable. It is not the place of this document to supply + rules for encoding or parsing Call IDs, but it must provide a + suitable means to communicate Call IDs within the protocol. The full + Call identification is referred to as the long Call ID. + + The Call_ID is only relevant at the sender and receiver nodes. + Maintenance of this information in the signaling state is not + mandated at any intermediate node. Thus, no change in [RFC3473] + transit implementations is required and there are no backward + compatibility issues. Forward compatibility is maintained by using + the existing default values to indicate that no Call processing is + required. + + Further, the long Call ID is not required as part of the Connection + (LSP) state even at the sender and receiver nodes so long as some + form of correlation is available. This correlation is provided + through the short Call ID. + +5.2.1. Long Form Call Identification + + The long Call ID is only required on the Notify message used to + establish the Call. It is carried in the "Session Name" field of the + SESSION_ATTRIBUTE object on the Notify message. + + A unique value per Call is inserted in the "Session Name" field by + the initiator of the Call. Subsequent core nodes MAY inspect this + object and MUST forward this object transparently across network + interfaces until reaching the egress node. Note that the structure + of this field MAY be the object of further formatting depending on + the naming convention(s). However, [RFC3209] defines the "Session + Name" field as a Null padded display string, so any formatting + conventions for the Call ID must be limited to this scope. + +5.2.2. Short Form Call Identification + + The Connections (LSPs) associated with a Call need to carry a + reference to the Call - the short Call ID. A new field is added to + the signaling protocol to identify an individual LSP with the Call to + which it belongs. + + + +Papadimitriou & Farrel Standards Track [Page 9] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + The new field is a 16-bit identifier (unique within the context of + the address pairing provided by the Tunnel_End_Point_Address and the + Sender_Address of the SENDER_TEMPLATE object) that MUST be exchanged + on the Notify message during Call initialization and is used on all + subsequent LSP messages that are associated with the Call. This + identifier is known as the short Call ID and is encoded as described + in Section 5.2.3. The Call ID MUST NOT be used as part of the + processing to determine the session to which an RSVP signaling + message applies. This does not generate any backward compatibility + issue since the reserved field of the SESSION object defined in + [RFC3209] MUST NOT be examined on receipt. + + In the unlikely case of short Call_ID exhaustion, local node policy + decides upon specific actions to be taken, but might include the use + of second Sender_Address. Local policy details are outside of the + scope of this document. + +5.2.3. Short Form Call ID Encoding + + The short Call ID is carried in a 16-bit field in the SESSION object + carried on the Notify message used during Call setup, and on all + messages during LSP setup and management. The field used was + previously reserved (MUST be set to zero on transmission and ignored + on receipt). This ensures backward compatibility with nodes that do + not utilize Calls. + + The figure below shows the new version of the object. + + Class = SESSION, Class-Num = 1, C-Type = 7(IPv4)/8(IPv6) + + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ~ IPv4/IPv6 Tunnel End Point Address ~ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Call_ID | Tunnel ID | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Extended Tunnel ID | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + IPv4/IPv6 Tunnel End Point Address: 32 bits/128 bits (see [RFC3209]) + + Call_ID: 16 bits + + A 16-bit identifier used in the SESSION object that remains + constant over the life of the Call. The Call_ID value MUST be set + to zero when there is no corresponding Call. + + + + +Papadimitriou & Farrel Standards Track [Page 10] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + Tunnel ID: 16 bits (see [RFC3209]) + + Extended Tunnel ID: 32 bits/128 bits (see [RFC3209]) + +5.3. LINK_CAPABILITY Object + + The LINK_CAPABILITY object is introduced to support link capability + exchange during Call setup and MAY be included in a Notify message + used for Call setup. This optional object includes the link-local + capabilities of a link joining the Call-initiating node (or Call- + terminating node) to the network. The specific node is indicated by + the source address of the Notify message. + + The link reported can be a single link or can be a bundled link + [RFC4201]. + + The Class Number is selected so that the nodes that do not recognize + this object drop it silently. That is, the top bit is set and the + next bit is clear. + + This object has the following format: + + Class-Num = 133 (form 10bbbbbb), 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) // + | | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The contents of the LINK_CAPABILITY object is defined as a series of + variable-length data items called subobjects. The subobject format + is defined in [RFC3209]. + + The following subobjects are currently defined. + + - Type 1: the link local IPv4 address of a link or a numbered bundle + using the format defined in [RFC3209]. + + - Type 2: the link local IPv6 address of a link or a numbered bundle + using the format defined in [RFC3209]. + + - Type 4: the link local identifier of an unnumbered link or bundle + using the format defined in [RFC3477]. + + + + + +Papadimitriou & Farrel Standards Track [Page 11] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + - Type 64: the Maximum Reservable Bandwidth corresponding to this + link or bundle (see [RFC4201]). + + - Type 65: the interface switching capability descriptor (see + [RFC4202]) corresponding to this link or bundle (see also + [RFC4201]). + + Note: future revisions of this document may extend the above list. + + A single instance of this object MAY be used to exchange capability + information relating to more than one link or bundled link. In this + case, the following ordering MUST be used: + + - each link MUST be identified by an identifier subobject (Type 1, + 2, or 4) + + - capability subobjects (Type 64 or 65, and future subobjects) MUST + be placed after the identifier subobject for the link or bundle to + which they refer. + + Multiple instances of the LINK_CAPABILITY object within the same + Notify message are not supported by this specification. In the event + that a Notify message contains multiple LINK_CAPABILITY objects, the + receiver SHOULD process the first one as normal and SHOULD ignore + subsequent instances of the object. + +5.4. Revised Message Formats + + The Notify message is enhanced to support Call establishment and + teardown of Calls. See Section 6 for a description of the + procedures. + +5.4.1. Notify Message + + The Notify message is modified in support of Call establishment by + the optional addition of the LINK_CAPABILITY object. Further, the + SESSION_ATTRIBUTE object is added to the <notify session> sequence to + carry the long Call ID. The presence of the SESSION_ATTRIBUTE object + MAY be used to distinguish a Notify message used for Call management, + but see Section 5.5 for another mechanism. The <notify session list> + MAY be used to simultaneously set up multiple Calls. + + + + + + + + + + +Papadimitriou & Farrel Standards Track [Page 12] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + The format of the Notify Message is as follows: + + <Notify message> ::= <Common Header> [ <INTEGRITY> ] + [[ <MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>]...] + [ <MESSAGE_ID> ] + <ERROR_SPEC> + <notify session list> + + <notify session list> ::= [ <notify session list> ] <notify session> + + <notify session> ::= <SESSION> [ <ADMIN_STATUS> ] + [ <POLICY_DATA>...] + [ <LINK_CAPABILITY> ] + [ <SESSION_ATTRIBUTE> ] + [ <sender descriptor> | <flow descriptor> ] + + <sender descriptor> ::= see [RFC3473] + + <flow descriptor> ::= see [RFC3473] + +5.5. ADMIN_STATUS Object + + Notify messages exchanged for Call control and management purposes + carry a specific new bit (the Call Management or C bit) in the + ADMIN_STATUS object. + + [RFC3473] indicates that the format and contents of the ADMIN_STATUS + object are as defined in [RFC3471]. The new "C" bit is added for + Call control as shown below. + + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + |R| Reserved |C|T|A|D| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + Reflect (R): 1 bit - see [RFC3471] + Testing (T): 1 bit - see [RFC3471] + Administratively down (A): 1 bit - see [RFC3471] + Deletion in progress (D): 1 bit - see [RFC3471] + Call Management (C): 1 bit + + This bit is set when the message is being used to control + and manage a Call. + + The procedures for the use of the C bit are described in Section 6. + + + + + +Papadimitriou & Farrel Standards Track [Page 13] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +6. Procedures in Support of Calls and Connections + +6.1. Call/Connection Setup Procedures + + This section describes the processing steps for Call and Connection + setup. + + There are three cases considered: + + - A Call is set up without any associated Connection. It is assumed + that Connections will be added to the Call at a later time, but + this is neither a requirement nor a constraint. + + - A Connection may be added to an existing Call. This may happen if + the Call was set up without any associated Connections, or if + another Connection is added to a Call that already has one or more + associated Connections. + + - A Connection may be established without any reference to a Call + (see Section 6.4). This encompasses the previous LSP setup + procedure. + + Note that a Call MUST NOT be imposed upon a Connection that is + already established. To do so would require changing the short Call + ID in the SESSION object of the existing LSPs and this would + constitute a change in the Session Identifier. This is not allowed + by existing protocol specifications. + + Call and Connection teardown procedures are described later in + Section 6.6. + +6.2. Call Setup + + A Call is set up before, and independent of, LSP (i.e., Connection) + setup. + + Call setup MAY necessitate verification of the link status and link + capability negotiation between the Call ingress node and the Call + egress node. The procedure described below is applied only once for + a Call and hence only once for the set of LSPs associated with a + Call. + + The Notify message (see [RFC3473]) is used to signal the Call setup + request and response. The new Call Management (C) bit in the + ADMIN_STATUS object is used to indicate that this Notify is managing + a Call. The Notify message is sent with source and destination + IPv4/IPv6 addresses set to any of the routable ingress/egress node + addresses respectively. + + + +Papadimitriou & Farrel Standards Track [Page 14] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + At least one session MUST be listed in the <notify session list> of + the Notify message. In order to allow for long identification of the + Call, the SESSION_ATTRIBUTE object is added as part of the <notify + session list>. Note that the ERROR_SPEC object is not relevant in + Call setup and MUST carry the Error Code zero ("Confirmation") to + indicate that there is no error. + + During Call setup, the ADMIN_STATUS object is sent with the following + bits set. Bits not listed MUST be set to zero. + + R - to cause the egress to respond + C - to indicate that the Notify message is managing a Call. + + The SESSION, SESSION_ATTRIBUTE, SENDER_TEMPLATE, SENDER_TSPEC objects + included in the <notify session> of the Notify message are built as + follows. + + - The SESSION object includes as Tunnel_End_Point_Address any of the + Call-terminating (egress) node's IPv4/IPv6 routable addresses. + The Call_ID is set to a non-zero value unique within the context + of the address pairing provided by the Tunnel_End_Point_Address + and the Sender_Address from the SENDER_TEMPLATE object (see + below). This value will be used as the short Call ID carried on + all messages for LSPs associated with this Call. + + Note that the Call_ID value of zero is reserved and MUST NOT be + used since it will be present in SESSION objects of LSPs that are + not associated with Calls. The Tunnel_ID of the SESSION object is + not relevant for this procedure and SHOULD be set to zero. The + Extended_Tunnel_ID of the SESSION object is not relevant for this + procedure and MAY be set to zero or to an address of the ingress + node. + + - The SESSION_ATTRIBUTE object contains priority flags. Currently + no use of these flags is envisioned, however, future work may + identify value in assigning priorities to Calls; accordingly the + Priority fields MAY be set to non-zero values. None of the Flags + in the SESSION_ATTRIBUTE object is relevant to this process and + this field SHOULD be set to zero. The Session Name field is used + to carry the long Call Id as described in Section 5. + + - The SENDER_TEMPLATE object includes as Sender Address any of the + Call-initiating (ingress) node's IPv4/IPv6 routable addresses. + The LSP_ID is not relevant and SHOULD be set to zero. + + - The bandwidth value inserted in the SENDER_TSPEC and FLOWSPEC + objects MUST be ignored upon receipt and SHOULD be set to zero + when sent. + + + +Papadimitriou & Farrel Standards Track [Page 15] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + Additionally, ingress/egress nodes that need to communicate their + respective link local capabilities may include a LINK_CAPABILITY + object in the Notify message. + + The receiver of a Notify message may identify whether it is part of + Call management or reporting an error by the presence or absence of + the SESSION_ATTRIBUTE object in the <notify session list>. Full + clarity, however, may be achieved by inspection of the new Call + Management (C) bit in the ADMIN_STATUS object. + + Note that the POLICY_DATA object may be included in the <notify + session list> and MAY be used to identify requestor credentials, + account numbers, limits, quotas, etc. This object is opaque to RSVP, + which simply passes it to policy control when required. + + Message IDs MUST be used during Call setup. + +6.2.1. Accepting Call Setup + + A node that receives a Notify message carrying the ADMIN_STATUS + object with the R and C bits set is being requested to set up a Call. + The receiver MAY perform authorization and policy according to local + requirements. + + If the Call is acceptable, the receiver responds with a Notify + message reflecting the information from the Call request with two + exceptions. + + - The responder removes any LINK_CAPABLITY object that was received + and MAY insert a LINK_CAPABILITY object that describes its own + access link. + + - The ADMIN_STATUS object is sent with only the C bit set. All + other bits MUST be set to zero. + + The responder MUST use the Message ID object to ensure reliable + delivery of the response. If no Message ID Acknowledgement is + received after the configured number of retries, the responder SHOULD + continue to assume that the Call was successfully established. Call + liveliness procedures are covered in Section 6.7. + +6.2.2. Call Setup Failure and Rejection + + Call setup may fail or be rejected. + + If the Notify message can not be delivered, no Message ID + acknowledgement will be received by the sender. In the event that + the sender has retransmitted the Notify message a configurable number + + + +Papadimitriou & Farrel Standards Track [Page 16] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + of times without receiving a Message ID Acknowledgement (as described + in [RFC2961]), the initiator SHOULD declare the Call failed and + SHOULD send a Call teardown request (see Section 6.6). + + It is also possible that a Message ID Acknowledgement is received but + no Call response Notify message is received. In this case, the + initiator MAY re-send the Call setup request a configurable number of + times (see Section 6.7) before declaring that the Call has failed. + At this point, the initiator MUST send a Call teardown request (see + Section 6.6). + + If the Notify message cannot be parsed or is in error, it MAY be + responded to with a Notify message carrying the error code 13 + ("Unknown object class") or 14 ("Unknown object C-Type") if + appropriate to the error detected. + + The Call setup MAY be rejected by the receiver because of security, + authorization, or policy reasons. Suitable error codes already exist + [RFC2205] and can be used in the ERROR_SPEC object included in the + Notify message sent in response. + + Error response Notify messages SHOULD also use the Message ID object + to achieve reliable delivery. No action should be taken on the + failure to receive a Message ID Acknowledgement after the configured + number of retries. + +6.3. Adding a Connections to a Call + + Once a Call has been established, LSPs can be added to the Call. + Since the short Call ID is part of the SESSION object, any LSP that + has the same Call ID value in the SESSION object belongs to the same + Call, and the Notify message used to establish the Call carried the + same Call ID in its SESSION object. + + There will be no confusion between LSPs that are associated with a + Call and those which are not, since the Call ID value MUST be equal + to zero for LSPs that are not associated with a Call, and MUST NOT be + equal to zero for a valid Call ID. + + LSPs for different Calls can be distinguished because the Call ID is + unique within the context of the source address (in the + SENDER_TEMPLATE object) and the destination address (in the SESSION + object). + + Ingress and egress nodes MAY group together LSPs associated with the + same Call and process them as a group according to implementation + requirements. Transit nodes need not be aware of the association of + multiple LSPs with the same Call. + + + +Papadimitriou & Farrel Standards Track [Page 17] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + The ingress node MAY choose to set the "Session Name" of an LSP to + match the long Call ID of the associated Call. + + The C bit of the ADMIN_STATUS object MUST NOT be set on LSP messages + including on Notify messages that pertain to the LSP and MUST be + ignored. + +6.3.1. Adding a Reverse Direction LSP to a Call + + Note that once a Call has been established, it is symmetric. That + is, either end of the Call may add LSPs to the Call. + + Special care is needed when managing LSPs in the reverse direction + since the addresses in the SESSION and SENDER_TEMPLATE are reversed. + However, since the short Call ID is unique in the context of a given + ingress-egress address pair, it may safely be used to associate the + LSP with the Call. + + Note that since Calls are defined here to be symmetrical, the issue + of potential Call ID collision arises. This is discussed in Section + 6.5. + +6.4. Call-Free Connection Setup + + It continues to be possible to set up LSPs as per [RFC3473] without + associating them with a Call. If the short Call ID in the SESSION + object is set to zero, there is no associated Call and the Session + Name field in the SESSION_ATTRIBUTE object MUST be interpreted simply + as the name of the session (see [RFC3209]). + + The C bit of the ADMIN_STATUS object MUST NOT be set on messages for + LSP control, including on Notify messages that pertain to LSPs, and + MUST be ignored when received on such messages. + +6.5. Call Collision + + Since Calls are symmetrical, it is possible that both ends of a Call + will attempt to establish Calls with the same long Call IDs at the + same time. This is only an issue if the source and destination + address pairs match. This situation can be avoided by applying some + rules to the contents of the long Call ID, but such mechanisms are + outside the scope of this document. + + If a node that has sent a Call setup request and has not yet received + a response itself receives a Call setup request with the same long + Call ID and matching source/destination addresses, it SHOULD process + as follows: + + + + +Papadimitriou & Farrel Standards Track [Page 18] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + - If its source address is numerically greater than the remote + source address, it MUST discard the received message and continue + to wait for a response to its setup request. + + - If its source address is numerically smaller than the remote + source address, it MUST discard state associated with the Call + setup that it initiated, and MUST respond to the received Call + setup. + + If a node receives a Call setup request carrying an address pair and + long Call ID that match an existing Call, the node MUST return an + error message (Notify message) with the new Error Code "Call + Management" and the new Error Value "Duplicate Call" in response to + the new Call request, and MUST NOT make any changes to the existing + Call. + + A further possibility for contention arises when short Call IDs are + assigned by a pair of nodes for two distinct Calls that are set up + simultaneously using different long Call IDs. In this event, a node + receives a Call setup request carrying a short Call ID that matches + one that it previously sent for the same address pair. The following + processing MUST be followed: + + - If the receiver's source address is numerically greater than the + remote source address, the receiver returns an error (Notify + message) with the new Error Code "Call Management" and the new + Error Value "Call ID Contention". + + - If the receiver's source address is numerically less than the + remote source address, the receiver accepts and processes the Call + request. It will receive an error message sent as described + above, and at that point, it selects a new short Call ID and re- + sends the Call setup request. + +6.6. Call/Connection Teardown + + As with Call/Connection setup, there are several cases to consider. + + - Removal of a Connection from a Call + - Removal of the last Connection from a Call + - Teardown of an "empty" Call + + The case of tearing down an LSP that is not associated with a Call + does not need to be examined as it follows exactly the procedures + described in [RFC3473]. + + + + + + +Papadimitriou & Farrel Standards Track [Page 19] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +6.6.1. Removal of a Connection from a Call + + An LSP that is associated with a Call may be deleted using the + standard procedures described in [RFC3473]. No special procedures + are required. + + Note that it is not possible to remove an LSP from a Call without + deleting the LSP. It is not valid to change the short Call ID from + non-zero to zero since this involves a change to the SESSION object, + which is not allowed. + +6.6.2. Removal of the Last Connection from a Call + + When the last LSP associated with a Call is deleted, the question + arises as to what happens to the Call. Since a Call may exist + independently of Connections, it is not always acceptable to say that + the removal of the last LSP from a Call removes the Call. + + The removal of the last LSP does not remove the Call and the + procedures described in the next Section MUST be used to delete the + Call. + +6.6.3. Teardown of an "Empty" Call + + When all LSPs have been removed from a Call, the Call may be torn + down or left for use by future LSPs. + + Deletion of Calls is achieved by sending a Notify message just as for + Call setup, but the ADMIN_STATUS object carries the R, D, and C bits + on the teardown request and the D and C bits on the teardown + response. Other bits MUST be set to zero. + + When a Notify message is sent for deleting a Call and the initiator + does not receive the corresponding reflected Notify message (or + possibly even the Message ID Ack), the initiator MAY retry the + deletion request using the same retry procedures as used during Call + establishment. If no response is received after full retry, the node + deleting the Call MAY declare the Call deleted, but under such + circumstances the node SHOULD avoid re-using the long or short Call + IDs for at least five times the Notify refresh period. + +6.6.4. Attempted Teardown of a Call with Existing Connections + + If a Notify request with the D bit of the ADMIN_STATUS object set is + received for a Call for which LSPs still exist, the request MUST be + rejected with the Error Code "Call Management" and Error Value + "Connections Still Exist". The state of the Call MUST NOT be + changed. + + + +Papadimitriou & Farrel Standards Track [Page 20] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +6.6.5. Teardown of a Call from the Egress + + Since Calls are symmetric, they may be torn down from the ingress or + egress. + + When the Call is "empty" (has no associated LSPs), it may be deleted + by the egress sending a Notify message just as described above. + + Note that there is a possibility that both ends of a Call initiate + Call deletion at the same time. In this case, the Notify message + acting as teardown request MAY be interpreted by its recipient as a + teardown response. But since the Notify messages acting as teardown + requests carry the R bit in the ADMIN_STATUS object, they MUST be + responded to anyway. If a teardown request Notify message is + received for an unknown Call ID, it is, nevertheless, responded to in + the affirmative. + +6.7. Control Plane Survivability + + Delivery of Notify messages is secured using Message ID + Acknowledgements as described in previous sections. + + Notify messages provide end-to-end communication that does not rely + on constant paths through the network. Notify messages are routed + according to IGP routing information. No consideration is, + therefore, required for network resilience (for example, make- + before-break, protection, fast re-route), although end-to-end + resilience is of interest for node restart and completely disjoint + networks. + + Periodic Notify messages SHOULD be sent by the initiator and + terminator of the Call to keep the Call alive and to handle ingress + or egress node restart. The time period for these retransmissions is + a local matter, but it is RECOMMENDED that this period should be + twice the shortest refresh period of any LSP associated with the + Call. When there are no LSPs associated with a Call, an LSR is + RECOMMENDED to use a refresh period of no less than one minute. The + Notify messages are identical to those sent as if establishing the + Call for the first time, except for the LINK_CAPABILITY object, which + may have changed since the Call was first established, due to, e.g., + the establishment of Connections, link failures, or the addition of + new component links. The current link information is useful for the + establishment of subsequent Connections. A node that receives a + refresh Notify message carrying the R bit in the ADMIN_STATUS object + MUST respond with a Notify response. A node that receives a refresh + Notify message (response or request) MAY reset its timer - thus, in + normal processing, Notify refreshes involve a single exchange once + per time period. + + + +Papadimitriou & Farrel Standards Track [Page 21] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + A node (sender or receiver) that is unsure of the status of a Call + MAY immediately send a Notify message as if establishing the Call for + the first time. + + Failure to receive a refresh Notify request has no specific meaning. + A node that fails to receive a refresh Notify request MAY send its + own refresh Notify request to establish the status of the Call. If a + node receives no response to a refresh Notify request (including no + Message ID Acknowledgement), a node MAY assume that the remote node + is unreachable or unavailable. It is a local policy matter whether + this causes the local node to teardown associated LSPs and delete the + Call. + + In the event that an edge node restarts without preserved state, it + MAY relearn LSP state from adjacent nodes and Call state from remote + nodes. If a Path or Resv message is received with a non-zero Call ID + but without the C bit in the ADMIN_STATUS, and for a Call ID that is + not recognized, the receiver is RECOMMENDED to assume that the Call + establishment is delayed and ignore the received message. If the + Call setup never materializes, the failure by the restarting node to + refresh state will cause the LSPs to be torn down. Optionally, the + receiver of such an LSP message for an unknown Call ID may return an + error (PathErr or ResvErr message) with the error code "Call + Management" and Error Value "Unknown Call ID". + +7. Applicability of Call and Connection Procedures + + This section considers the applicability of the different Call + establishment procedures at the NNI and UNI reference points. This + section is informative and is not intended to prescribe or prevent + other options. + +7.1. Network-Initiated Calls + + Since the link properties and other traffic-engineering attributes + are likely known through the IGP, the LINK_CAPABILITY object is not + usually required. + + In multi-domain networks, it is possible that access link properties + and other traffic-engineering attributes are not known since the + domains do not share this sort of information. In this case, the + Call setup mechanism may include the LINK_CAPABILITY object. + + + + + + + + + +Papadimitriou & Farrel Standards Track [Page 22] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +7.2. User-Initiated Calls + + It is possible that the access link properties and other traffic- + engineering attributes are not shared across the core network. In + this case, the Call setup mechanism may include the LINK_CAPABILITY + object. + + Further, the first node within the network may be responsible for + managing the Call. In this case, the Notify message that is used to + set up the Call is addressed by the user network edge node to the + first node of the core network. Moreover, neither the long Call ID + nor the short Call ID is supplied (the Session Name Length is set to + zero and the Call ID value is set to zero). The Notify message is + passed to the first core node, which is responsible for generating + the long and short Call IDs before dispatching the message to the + remote Call end point (which is known from the SESSION object). + + Further, when used in an overlay context, the first core node is + allowed (see [RFC4208]) to replace the Session Name assigned by the + ingress node and passed in the Path message. In the case of Call + management, the first core node: + + 1) MAY insert a long Call ID in the Session Name of a Path + message. + + 2) MUST replace the Session Name with that originally issued by + the user edge node when it returns the Resv message to the + ingress node. + +7.3. External Call Managers + + Third party Call management agents may be used to apply policy and + authorization at a point that is neither the initiator nor terminator + of the Call. The previous example is a particular case of this, but + the process and procedures are identical. + +7.3.1. Call Segments + + Call Segments exist between a set of default and configured External + Call Managers along a path between the ingress and egress nodes, and + use the protocols described in this document. + + The techniques that are used by a given service provider to identify + which External Call Managers within its network should process a + given Call are beyond the scope of this document. + + An External Call Manager uses normal IP routing to route the Notify + message to the next External Call Manager. Notify messages (requests + + + +Papadimitriou & Farrel Standards Track [Page 23] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + and responses) are therefore encapsulated in IP packets that identify + the sending and receiving External Call Managers, but the addresses + used to identify the Call (the Sender Address in the SENDER_TEMPLATE + object and the Tunnel Endpoint Address in the SESSION object) + continue to identify the endpoints of the Call. + +8. Non-Support of Call ID + + It is important that the procedures described above operate as + seamlessly as possible with legacy nodes that do not support the + extensions described. + + Clearly, there is no need to consider the case where the Call + initiator does not support Call setup initiation. + +8.1. Non-Support by External Call Managers + + It is unlikely that a Call initiator will be configured to send Call + establishment Notify requests to an external Call manager, including + the first core node, if that node does not support Call setup. + + A node that receives an unexpected Call setup request will fall into + one of the following categories. + + - Node does not support RSVP. The message will fail to be delivered + or responded to. No Message ID Acknowledgement will be sent. The + initiator will retry and then give up. + + - Node supports RSVP or RSVP-TE but not GMPLS. The message will be + delivered but not understood. It will be discarded. No Message + ID Acknowledgement will be sent. The initiator will retry and + then give up. + + - Node supports GMPLS but not Call management. The message will be + delivered, but parsing will fail because of the presence of the + SESSION_ATTRIBUTE object. A Message ID Acknowledgement may be + sent before the parse fails. When the parse fails, the Notify + message may be discarded in which case the initiator will retry + and then give up; alternatively, a parse error may be generated + and returned in a Notify message which will indicate to the + initiator that Call management is not supported. + +8.2. Non-Support by Transit Node + + Transit nodes SHOULD NOT examine Notify messages that are not + addressed to them. However, they will see short Call IDs in all + messages for all LSPs associated with Calls. + + + + +Papadimitriou & Farrel Standards Track [Page 24] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + Previous specifications state that these fields SHOULD be ignored on + receipt and MUST be transmitted as zero. This might be interpreted + by some implementations as meaning that the fields should be zeroed + before the objects are forwarded. If this happens, LSP setup will + not be possible. If either of the fields is zeroed either on the + Path or the Resv message, the Resv message will reach the initiator + with the field set to zero - this is an indication to the initiator + that some node in the network is preventing Call management. Use of + Explicit Routes may help to mitigate this issue by avoiding such + nodes. Ultimately, however, it may be necessary to upgrade the + offending nodes to handle these protocol extensions. + +8.3. Non-Support by Egress Node + + It is unlikely that an attempt will be made to set up a Call to a + remote node that does not support Calls. + + If the egress node does not support Call management through the + Notify message, it will react (as described in Section 8.1) in the + same way as an External Call Manager. + +9. Security Considerations + + Please refer to each of the documents referenced in the following + sections for a description of the security considerations applicable + to the features that they provide. + +9.1. Call and Connection Security Considerations + + Call setup is vulnerable to attacks both of spoofing and denial of + service. Since Call setup uses Notify messages, the process can be + protected by the use of the INTEGRITY object to secure those messages + as described in [RFC2205] and [RFC3473]. Deployments where security + is a concern SHOULD use this mechanism. + + Implementations and deployments MAY additionally protect the Call + setup exchange using end-to-end security mechanisms such as those + provided by IPsec (see [RFC4302] and [RFC4303]), or using RSVP + security [RFC2747]. + + Note, additionally, that it would be desirable to use the process of + independent Call establishment, where the Call is set up separately + from the LSPs, to apply an extra level of authentication and policy + for the end-to-end LSPs above that which is available with Call-less, + hop-by-hop LSP setup. However doing so will require additional work + to set up security associations between the peer and the call manager + that meet the requirements of [RFC4107]. The mechanism described in + this document is expected to meet this use case when combined with + + + +Papadimitriou & Farrel Standards Track [Page 25] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + this additional work. Application of this mechanism to the + authentication and policy use case prior to standardization of a + security solution is inappropriate and outside the current + applicability of the mechanism. + + The frequency of Call establishment is application dependent and hard + to generalize. Key exchange for Call-related message exchanges is + therefore something that should be configured or arranged dynamically + in different deployments according to the advice in [RFC4107]. Note + that the remote RSVP-TE signaling relationship between Call endpoints + is no different from the signaling relationship between LSRs that + establish an LSP. That is, the LSRs are not necessarily IP-adjacent + in the control plane in either case. Thus, key exchange should be + regarded as a remote procedure, not a single hop procedure. There + are several procedures for automatic remote exchange of keys, and + IKEv2 [RFC4306] is particularly suggested in [RFC3473]. + +10. IANA Considerations + +10.1. RSVP Objects + + A new RSVP object is introduced. IANA has made an assignment from + the "RSVP Parameters" registry using the sub-registry "Class Names, + Class Numbers, and Class Types". + + o LINK_CAPABILITY object + + Class-Num = 133 (form 10bbbbbb) + + The Class Number is selected so that nodes not recognizing this + object drop it silently. That is, the top bit is set and the next + bit is cleared. + + C-Type = 1 (TE Link Capabilities) + + The LINK_CAPABILITY object is only defined for inclusion on Notify + messages. + + Refer to Section 5.3 of this document. + + IANA maintains a list of subobjects that may be carried in this + object. This list is maintained in the registry entry for the + LINK_CAPABILITY object as is common practice for the subobjects of + other RSVP objects. For each subobject, IANA lists: + + - subobject type number + - subobject name + - reference indicating where subobject is defined. + + + +Papadimitriou & Farrel Standards Track [Page 26] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + The initial list of subobjects is provided in Section 5.3 of this + document. + +10.2. RSVP Error Codes and Error Values + + A new RSVP Error Code and new Error Values are introduced. IANA has + made assignments from the "RSVP Parameters" registry using the sub- + registry "Error Codes and Globally-Defined Error Value Sub-Codes". + + o Error Codes: + - Call Management (value 32) + + o Error Values: + - Call Management/Call ID Contention (value 1) + - Call Management/Connections Still Exist (value 2) + - Call Management/Unknown Call ID (value 3) + - Call Management/Duplicate Call (value 4) + +10.3. RSVP ADMIN_STATUS Object Bits + + [GMPLS-E2E] requested that IANA manage the bits of the RSVP + ADMIN_STATUS object. A new "Administrative Status Information Flags" + sub-registry of the "GMPLS Signaling Parameters" registry was + created. + + This document defines one new bit, the C bit, to be tracked in that + sub-registry. Bit number 28 has been assigned. See Section 5.5 of + this document. + +11. Acknowledgements + + The authors would like to thank George Swallow, Yakov Rekhter, Lou + Berger, Jerry Ash, and Kireeti Kompella for their very useful input + to, and comments on, an earlier revision of this document. + + Thanks to Lyndon Ong and Ben Mack-Crane for lengthy discussions + during and after working group last call, and to Deborah Brungard for + a final, detailed review. + + Thanks to Suresh Krishnan for the GenArt review, and to Magnus + Nystrom for discussions about security. + + Useful comments were received during IESG review from Brian + Carpenter, Lars Eggert, Ted Hardie, Sam Hartman, and Russ Housley. + + + + + + + +Papadimitriou & Farrel Standards Track [Page 27] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +12. References + +12.1. Normative References + + [GMPLS-E2E] 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, May 2007. + + [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate + Requirement Levels", BCP 14, RFC 2119, March 1997. + + [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and + S. Jamin, "Resource ReSerVation Protocol (RSVP) -- + Version 1 Functional Specification", RFC 2205, September + 1997. + + [RFC2747] Baker, F., Lindell, B., and M. Talwar, "RSVP + Cryptographic Authentication", RFC 2747, January 2000. + + [RFC2961] Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi, F., + and S. Molendini, "RSVP Refresh Overhead Reduction + Extensions", RFC 2961, April 2001. + + [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., + and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP + Tunnels", RFC 3209, December 2001. + + [RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label + Switching (GMPLS) Signaling Functional Description", RFC + 3471, January 2003. + + [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label + Switching (GMPLS) Signaling Resource ReserVation + Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC + 3473, January 2003. + + [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links + in Resource ReSerVation Protocol - Traffic Engineering + (RSVP-TE)", RFC 3477, January 2003. + + [RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label + Switching (GMPLS) Architecture", RFC 3945, October 2004. + + [RFC4201] Kompella, K., Rekhter, Y., and L. Berger, "Link Bundling + in MPLS Traffic Engineering (TE)", RFC 4201, October + 2005. + + + + +Papadimitriou & Farrel Standards Track [Page 28] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + [RFC4202] Kompella, K., Ed., and Y. Rekhter, Ed., "Routing + Extensions in Support of Generalized Multi-Protocol Label + Switching (GMPLS)", RFC 4202, October 2005. + + [RFC4208] Swallow, G., Drake, J., Ishimatsu, H., and Y. Rekhter, + "Generalized Multiprotocol Label Switching (GMPLS) User- + Network Interface (UNI): Resource ReserVation Protocol- + Traffic Engineering (RSVP-TE) Support for the Overlay + Model", RFC 4208, October 2005. + + [RFC4302] Kent, S., "IP Authentication Header", RFC 4302, December + 2005. + + [RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)", RFC + 4303, December 2005. + + [RFC4306] Kaufman, C., Ed., "Internet Key Exchange (IKEv2) + Protocol", RFC 4306, December 2005. + + [RFC4426] Lang, J., Ed., Rajagopalan, B., Ed., and D. + Papadimitriou, Ed., "Generalized Multi-Protocol Label + Switching (GMPLS) Recovery Functional Specification", RFC + 4426, March 2006. + +12.2. Informative References + + [ASON-APPL] Drake, J., Papadimitriou, D., Farrel, A., Brungard, D., + Ali, Z., Ayyangar, A., Ould-Brahim, H., and D. Fedyk, + "Generalized MPLS (GMPLS) RSVP-TE Signalling in support + of Automatically Switched Optical Network (ASON), Work in + Progress, July 2005. + + [RFC4107] Bellovin, S. and R. Housley, "Guidelines for + Cryptographic Key Management", BCP 107, RFC 4107, June + 2005. + + [RFC4139] Papadimitriou, D., Drake, J., Ash, J., Farrel, A., and L. + Ong, "Requirements for Generalized MPLS (GMPLS) Signaling + Usage and Extensions for Automatically Switched Optical + Network (ASON)", RFC 4139, July 2005. + + [STITCH] Ayyangar, A., Kompella, K., Vasseur, JP., and A. Farrel, + "Label Switched Path Stitching with Generalized + Multiprotocol Label Switching Traffic Engineering (GMPLS + TE)", Work in Progress, April 2007. + + + + + + +Papadimitriou & Farrel Standards Track [Page 29] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + + For information on the availability of the following document, please + see http://www.itu.int. + + [G.8080] ITU-T, "Architecture for the Automatically Switched + Optical Network (ASON)," Recommendation G.8080/ Y.1304, + November 2001 (and Revision, January 2003). + +Authors' Addresses + + John Drake + Boeing Satellite Systems + 2300 East Imperial Highway + El Segundo, CA 90245 + EMail: John.E.Drake2@boeing.com + + Deborah Brungard (AT&T) + Rm. D1-3C22 - 200 S. Laurel Ave. + Middletown, NJ 07748, USA + EMail: dbrungard@att.com + + Zafar Ali (Cisco) + 100 South Main St. #200 + Ann Arbor, MI 48104, USA + EMail: zali@cisco.com + + Arthi Ayyangar (Nuova Systems) + 2600 San Tomas Expressway + Santa Clara, CA 95051 + EMail: arthi@nuovasystems.com + + Don Fedyk (Nortel Networks) + 600 Technology Park Drive + Billerica, MA, 01821, USA + EMail: dwfedyk@nortel.com + +Contact Addresses + + Dimitri Papadimitriou + Alcatel-Lucent, + Fr. Wellesplein 1, + B-2018 Antwerpen, Belgium + Phone: +32 3 240-8491 + EMail: dimitri.papadimitriou@alcatel-lucent.be + + Adrian Farrel + Old Dog Consulting + Phone: +44 (0) 1978 860944 + EMail: adrian@olddog.co.uk + + + +Papadimitriou & Farrel Standards Track [Page 30] + +RFC 4974 GMPLS RSVP-TE Signaling Extensions August 2007 + + +Full Copyright Statement + + Copyright (C) The IETF Trust (2007). + + This document is subject to the rights, licenses and restrictions + contained in BCP 78, and except as set forth therein, the authors + retain all their rights. + + This document and the information contained herein are provided on an + "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS + OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND + THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF + THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED + WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Intellectual Property + + The IETF takes no position regarding the validity or scope of any + Intellectual Property Rights or other rights that might be claimed to + pertain to the implementation or use of the technology described in + this document or the extent to which any license under such rights + might or might not be available; nor does it represent that it has + made any independent effort to identify any such rights. Information + on the procedures with respect to rights in RFC documents can be + found in BCP 78 and BCP 79. + + Copies of IPR disclosures made to the IETF Secretariat and any + assurances of licenses to be made available, or the result of an + attempt made to obtain a general license or permission for the use of + such proprietary rights by implementers or users of this + specification can be obtained from the IETF on-line IPR repository at + http://www.ietf.org/ipr. + + The IETF invites any interested party to bring to its attention any + copyrights, patents or patent applications, or other proprietary + rights that may cover technology that may be required to implement + this standard. Please address the information to the IETF at + ietf-ipr@ietf.org. + +Acknowledgement + + Funding for the RFC Editor function is currently provided by the + Internet Society. + + + + + + + +Papadimitriou & Farrel Standards Track [Page 31] + |