idnits 2.17.1 draft-ietf-mpls-generalized-signaling-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts. ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories. == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 1 longer page, the longest (page 3) being 100 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 11 instances of too long lines in the document, the longest one being 5 characters in excess of 72. ** The abstract seems to contain references ([GMPLS-LDP], [GMPLS-SONET], [GMPLS-RSVP]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 670: '... is reserved. It MUST be set to zero o...' RFC 2119 keyword, line 671: '... and MUST be ignored on receip...' RFC 2119 keyword, line 756: '...ontention and it MUST issue a PathErr/...' RFC 2119 keyword, line 758: '... error, the node SHOULD try to allocat...' RFC 2119 keyword, line 924: '...ted for a secondary LSP MAY be used by...' (8 more instances...) Miscellaneous warnings: ---------------------------------------------------------------------------- -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 2001) is 8229 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'MPLS-BUNDLING' is mentioned on line 1060, but not defined == Unused Reference: 'RECOVERY' is defined on line 1259, but no explicit reference was found in the text == Outdated reference: A later version (-06) exists of draft-ietf-mpls-cr-ldp-05 == Outdated reference: A later version (-07) exists of draft-ietf-mpls-generalized-cr-ldp-05 == Outdated reference: A later version (-09) exists of draft-ietf-mpls-generalized-rsvp-te-05 == Outdated reference: A later version (-09) exists of draft-ietf-ccamp-gmpls-routing-00 == Outdated reference: A later version (-08) exists of draft-ietf-ccamp-gmpls-sonet-sdh-00 ** Obsolete normative reference: RFC 3036 (ref. 'LDP') (Obsoleted by RFC 5036) -- Possible downref: Normative reference to a draft: ref. 'LMP' -- Possible downref: Normative reference to a draft: ref. 'MPLS-BUNDLE' == Outdated reference: A later version (-08) exists of draft-ietf-mpls-lsp-hierarchy-02 == Outdated reference: A later version (-08) exists of draft-ietf-mpls-rsvp-unnum-01 == Outdated reference: A later version (-09) exists of draft-ietf-mpls-rsvp-lsp-tunnel-08 -- No information found for draft-ieft-mpls-recovery-frmwrk - is the name correct? -- Possible downref: Normative reference to a draft: ref. 'RECOVERY' Summary: 9 errors (**), 0 flaws (~~), 12 warnings (==), 6 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group Peter Ashwood-Smith (Nortel Networks Corp.) 2 Internet Draft Ayan Banerjee (Calient Networks) 3 Expiration Date: April 2002 Lou Berger (Movaz Networks) 4 Greg Bernstein (Ciena Corporation) 5 John Drake (Calient Networks) 6 Yanhe Fan (Axiowave Networks) 7 Kireeti Kompella (Juniper Networks, Inc.) 8 Eric Mannie (EBONE) 9 Jonathan P. Lang (Calient Networks) 10 Bala Rajagopalan (Tellium, Inc.) 11 Yakov Rekhter (Juniper Networks, Inc.) 12 Debanjan Saha (Tellium, Inc.) 13 Vishal Sharma (Metanoia, Inc.) 14 George Swallow (Cisco Systems) 15 Z. Bo Tang (Tellium, Inc.) 17 October 2001 19 Generalized MPLS - Signaling Functional Description 21 draft-ietf-mpls-generalized-signaling-06.txt 23 Status of this Memo 25 This document is an Internet-Draft and is in full conformance with 26 all provisions of Section 10 of RFC2026. Internet-Drafts are working 27 documents of the Internet Engineering Task Force (IETF), its areas, 28 and its working groups. Note that other groups may also distribute 29 working documents as Internet-Drafts. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 To view the current status of any Internet-Draft, please check the 37 "1id-abstracts.txt" listing contained in an Internet-Drafts Shadow 38 Directory, see http://www.ietf.org/shadow.html. 40 Abstract 42 This document describes extensions to MPLS signaling required to 43 support Generalized MPLS. Generalized MPLS extends the MPLS control 44 plane to encompass time-division (e.g. SONET ADMs), wavelength 45 (optical lambdas) and spatial switching (e.g. incoming port or fiber 46 to outgoing port or fiber). This document presents a functional 47 description of the extensions. Protocol specific formats and 48 mechanisms are specified in [GMPLS-RSVP] and [GMPLS-LDP]. Technology 49 specific details are expected to be specified in independent 50 technology specific documents, e.g., [GMPLS-SONET]. 52 Contents 54 1 Introduction .............................................. 3 55 2 Overview ................................................. 4 56 3 Label Related Formats .................................... 6 57 3.1 Generalized Label Request ................................. 7 58 3.1.1 Required Information ...................................... 7 59 3.1.2 Bandwidth Encoding ........................................ 9 60 3.2 Generalized Label ......................................... 10 61 3.2.1 Required Information ...................................... 11 62 3.3 Waveband Switching ........................................ 12 63 3.3.1 Required information ...................................... 12 64 3.4 Suggested Label ........................................... 13 65 3.5 Label Set ................................................. 14 66 3.5.1 Required Information ...................................... 14 67 4 Bidirectional LSPs ........................................ 16 68 4.1 Required Information ...................................... 17 69 4.2 Contention Resolution ..................................... 17 70 5 Notification on Label Error ............................... 20 71 6 Explicit Label Control .................................... 20 72 6.1 Required Information ...................................... 20 73 7 Protection Information .................................... 21 74 7.1 Required Information ...................................... 22 75 8 Administrative Status Information ......................... 23 76 8.1 Required Information ...................................... 24 77 9 Control Channel Separation ................................ 25 78 9.1 Interface Identification .................................. 25 79 9.1.1 Required Information ...................................... 25 80 9.2 Fault Handling ............................................ 27 81 10 Acknowledgments ........................................... 28 82 11 Security Considerations ................................... 28 83 12 IANA Considerations ....................................... 28 84 13 References ................................................ 28 85 14 Authors' Addresses ........................................ 29 87 [Editor's note: changes to be removed prior to publication as an RFC.] 88 Changes from previous version: 90 o Removed redundant encoding type 91 o Revised Admin Status Usage 92 (per comments and also removed potential race condition) 93 o Clarified text related to interface bundling 94 (To be consistent with updated bundling draft.) 95 o Minor editorial changes and clarifications 97 1. Introduction 99 The Multiprotocol Label Switching (MPLS) architecture [MPLS-ARCH] has 100 been defined to support the forwarding of data based on a label. In 101 this architecture, Label Switching Routers (LSRs) were assumed to 102 have a forwarding plane that is capable of (a) recognizing either 103 packet or cell boundaries, and (b) being able to process either 104 packet headers (for LSRs capable of recognizing packet boundaries) or 105 cell headers (for LSRs capable of recognizing cell boundaries). 107 The original architecture has recently been extended to include LSRs 108 whose forwarding plane recognizes neither packet, nor cell 109 boundaries, and therefore, can't forward data based on the 110 information carried in either packet or cell headers. Specifically, 111 such LSRs include devices where the forwarding decision is based on 112 time slots, wavelengths, or physical ports. 114 Given the above, LSRs, or more precisely interfaces on LSRs, can be 115 subdivided into the following classes: 117 1. Interfaces that recognize packet/cell boundaries and can forward 118 data based on the content of the packet/cell header. Examples 119 include interfaces on routers that forward data based on the 120 content of the "shim" header, interfaces on ATM-LSRs that forward 121 data based on the ATM VPI/VCI. Such interfaces are referred to as 122 Packet-Switch Capable (PSC). 124 2. Interfaces that forward data based on the data's time slot in a 125 repeating cycle. An example of such an interface is an interface 126 on a SONET Cross-Connect. Such interfaces are referred to as 127 Time-Division Multiplex Capable (TDM). 129 3. Interfaces that forward data based on the wavelength on which the 130 data is received. An example of such an interface is an interface 131 on an Optical Cross-Connect that can operate at the level of an 132 individual wavelength. Such interfaces are referred to as Lambda 133 Switch Capable (LSC). 135 4. Interfaces that forward data based on a position of the data in 136 the real world physical spaces. An example of such an interface 137 is an interface on an Optical Cross-Connect that can operate at 138 the level of a single (or multiple) fibers. Such interfaces are 139 referred to as Fiber-Switch Capable (FSC). 141 Using the concept of nested LSPs allows the system to scale by 142 building a forwarding hierarchy. At the top of this hierarchy are 143 FSC interfaces, followed by LSC interfaces, followed by TDM 144 interfaces, followed by PSC interfaces. This way, an LSP that starts 145 and ends on a PSC interface can be nested (together with other LSPs) 146 into an LSP that starts and ends on a TDM interface. This LSP, in 147 turn, can be nested (together with other LSPs) into an LSP that 148 starts and ends on an LSC interface, which in turn can be nested 149 (together with other LSPs) into an LSP that starts and ends on a FSC 150 interface. See [MPLS-HIERARCHY] for more information on LSP 151 hierarchies. 153 The establishment of LSPs that span only the first class of 154 interfaces is defined in [LDP, CR-LDP, RSVP-TE]. This document 155 presents a functional description of the extensions needed to 156 generalize the MPLS control plane to support each of the four classes 157 of interfaces. Only signaling protocol independent formats and 158 definitions are provided in this document. Protocol specific formats 159 are defined in [GMPLS-RSVP] and [GMPLS-LDP]. Technology specific 160 details are outside the scope of this document and will be specified 161 in technology specific documents, such as [GMPLS-SONET]. 163 2. Overview 165 Generalized MPLS differs from traditional MPLS in that it supports 166 multiple types of switching, i.e., the addition of support for TDM, 167 lambda, and fiber (port) switching. The support for the additional 168 types of switching has driven generalized MPLS to extend certain base 169 functions of traditional MPLS and, in some cases, to add 170 functionality. These changes and additions impact basic LSP 171 properties, how labels are requested and communicated, the 172 unidirectional nature of LSPs, how errors are propagated, and 173 information provided for synchronizing the ingress and egress. 175 In traditional MPLS Traffic Engineering, links traversed by an LSP 176 can include an intermix of links with heterogeneous label encodings. 177 For example, an LSP may span links between routers, links between 178 routers and ATM-LSRs, and links between ATM-LSRs. Generalized MPLS 179 extends this by including links where the label is encoded as a time 180 slot, or a wavelength, or a position in the real world physical 181 space. Just like with traditional MPLS TE, where not all LSRs are 182 capable of recognizing (IP) packet boundaries (e.g., an ATM-LSR) in 183 their forwarding plane, generalized MPLS includes support for LSRs 184 that can't recognize (IP) packet boundaries in their forwarding 185 plane. In traditional MPLS TE an LSP that carries IP has to start 186 and end on a router. Generalized MPLS extends this by requiring an 187 LSP to start and end on similar type of LSRs. Also, in generalized 188 MPLS the type of a payload that can be carried by an LSP is extended 189 to allow such payloads as SONET/SDH, or 1 or 10Gb Ethernet. These 190 changes from traditional MPLS are reflected in how labels are 191 requested and communicated in generalized MPLS, see Sections 3.1 and 192 3.2. A special case of Lambda switching, called Waveband switching 193 is also described in Section 3.3. 195 Another basic difference between traditional and non-PSC types of 196 generalized MPLS LSPs, is that bandwidth allocation for an LSP can be 197 performed only in discrete units, see Section 3.1.3. There are also 198 likely to be (much) fewer labels on non-PSC links than on PSC links. 199 Note that the use of Forwarding Adjacencies (FA), see [MPLS- 200 HIERARCHY], provides a mechanism that may improve bandwidth 201 utilization, when bandwidth allocation can be performed only in 202 discrete units, as well as a mechanism to aggregate forwarding state, 203 thus allowing the number of required labels to be reduced. 205 Generalized MPLS allows for a label to be suggested by an upstream 206 node, see Section 3.4. This suggestion may be overridden by a 207 downstream node but, in some cases, at the cost of higher LSP setup 208 time. The suggested label is valuable when establishing LSPs through 209 certain kinds of optical equipment where there may be a lengthy (in 210 electrical terms) delay in configuring the switching fabric. For 211 example micro mirrors may have to be elevated or moved, and this 212 physical motion and subsequent damping takes time. If the labels and 213 hence switching fabric are configured in the reverse direction (the 214 norm) the MAPPING/Resv message may need to be delayed by 10's of 215 milliseconds per hop in order to establish a usable forwarding path. 216 The suggested label is also valuable when recovering from nodal 217 faults. 219 Generalized MPLS extends on the notion of restricting the range of 220 labels that may be selected by a downstream node, see Section 3.5. 221 In generalized MPLS, an ingress or other upstream node may restrict 222 the labels that may be used by an LSP along either a single hop or 223 along the whole LSP path. This feature is driven from the optical 224 domain where there are cases where wavelengths used by the path must 225 be restricted either to a small subset of possible wavelengths, or to 226 one specific wavelength. This requirement occurs because some 227 equipment may only be able to generate a small set of the wavelengths 228 that intermediate equipment may be able to switch, or because 229 intermediate equipment may not be able to switch a wavelength at all, 230 being only able to redirect it to a different fiber. 232 While traditional traffic engineered MPLS (and even LDP) are 233 unidirectional, generalized MPLS supports the establishment of 234 bidirectional LSPs, see Section 4. The need for bidirectional LSPs 235 comes from non-PSC applications. There are multiple reasons why such 236 LSPs are needed, particularly possible resource contention when 237 allocating reciprocal LSPs via separate signaling sessions, and 238 simplifying failure restoration procedures in the non-PSC case. 239 Bidirectional LSPs also have the benefit of lower setup latency and 240 lower number of messages required during setup. 242 Generalized MPLS supports the communication of a specific label to 243 use on a specific interface, see Section 6. [GMPLS-RSVP] also 244 supports an RSVP specific mechanism for rapid failure notification. 246 Generalized MPLS formalizes possible separation of control and data 247 channels, see Section 9. Such support is particularly important to 248 support technologies where control traffic cannot be sent in-band 249 with the data traffic. 251 Generalized MPLS also allows for the inclusion of technology specific 252 parameters in signaling. The intent is for all technology specific 253 parameters to be carried, when using RSVP, in the SENDER_TSPEC and 254 other related objects, and when using CR-LDP, in the Traffic 255 Parameters TLV. Technology specific formats will be defined on an as 256 needed basis. For an example definition, see [GMPLS-SONET]. 258 3. Label Related Formats 260 To deal with the widening scope of MPLS into the optical and time 261 domain, several new forms of "label" are required. These new forms 262 of label are collectively referred to as a "generalized label". A 263 generalized label contains enough information to allow the receiving 264 node to program its cross connect, regardless of the type of this 265 cross connect, such that the ingress segments of the path are 266 properly joined. This section defines a generalized label request, a 267 generalized label, support for waveband switching, suggested label 268 and label sets. 270 Note that since the nodes sending and receiving the new form of label 271 know what kinds of link they are using, the generalized label does 272 not contain a type field, instead the nodes are expected to know from 273 context what type of label to expect. 275 3.1. Generalized Label Request 277 The Generalized Label Request supports communication of 278 characteristics required to support the LSP being requested. These 279 characteristics include LSP encoding and LSP payload. Note that 280 these characteristics may be used by transit nodes, e.g., to support 281 penultimate hop popping. 283 The Generalized Label Request carries an LSP encoding parameter, 284 called LSP Encoding Type. This parameter indicates the encoding 285 type, e.g., SONET/SDH/GigE etc., that will be used with the data 286 associated with the LSP. The LSP Encoding Type represents the nature 287 of the LSP, and not the nature of the links that the LSP traverses. 288 A link may support a set of encoding formats, where support means 289 that a link is able to carry and switch a signal of one or more of 290 these encoding formats depending on the resource availability and 291 capacity of the link. For example, consider an LSP signaled with 292 "lambda" encoding. It is expected that such an LSP would be 293 supported with no electrical conversion and no knowledge of the 294 modulation and speed by the transit nodes. Other formats normally 295 require framing knowledge, and field parameters are broken into the 296 framing type and speed as shown below. 298 3.1.1. Required Information 300 The information carried in a Generalized Label Request is: 302 0 1 2 3 303 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 304 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 305 | LSP Enc. Type |Switching Type | G-PID | 306 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 308 LSP Encoding Type: 8 bits 310 Indicates the encoding of the LSP being requested. The 311 following shows permitted values and their meaning: 313 Value Type 314 ----- ---- 315 1 Packet 316 2 Ethernet V2/DIX 317 3 ANSI PDH 318 4 ETSI PDH 319 5 SDH ITU-T G.707 320 6 SONET ANSI T1.105 321 7 Digital Wrapper, G.709 322 8 Lambda (photonic) 323 9 Fiber 324 10 Ethernet 802.3 326 The ANSI PDH and ETSI PDH types designate these respective 327 networking technologies. DS1 and DS3 are examples of ANSI PDH 328 LSPs. An E1 LSP would be ETSI PDH. The Lambda encoding type 329 refers to an LSP that encompasses a whole wavelength. The 330 Fiber encoding type refers to an LSP that encompasses a whole 331 fiber port. 333 Switching Type: 8 bits 335 Indicates the type of switching that should be performed on a 336 particular link. This field is needed for links that advertise 337 more than one type of switching capability. Values of this 338 field are as the Switching Capability field defined in [GMPLS- 339 RTG] 341 Generalized PID (G-PID): 16 bits 343 An identifier of the payload carried by an LSP, i.e. an 344 identifier of the client layer of that LSP. This is used by 345 the nodes at the endpoints of the LSP, and in some cases by the 346 penultimate hop. Standard Ethertype values are used for packet 347 and Ethernet LSPs; other values are: 349 Value Type Technology 350 ----- ---- ---------- 351 0 Unknown All 352 1 DS1 SF ANSI-PDH 353 2 DS1 ESF ANSI-PDH 354 3 DS3 M23 ANSI-PDH 355 4 DS3 C-Bit Parity ANSI-PDH 356 5 Asynchronous mapping of E4 SDH 357 6 Asynchronous mapping of DS3/T3 SDH 358 7 Asynchronous mapping of E3 SDH 359 8 Bit synchronous mapping of E3 SDH 360 9 Byte synchronous mapping of E3 SDH 361 10 Asynchronous mapping of DS2/T2 SDH 362 11 Bit synchronous mapping of DS2/T2 SDH 363 13 Asynchronous mapping of E1 SDH 364 14 Byte synchronous mapping of E1 SDH 365 15 Byte synchronous mapping of 31 * DS0 SDH 366 16 Asynchronous mapping of DS1/T1 SDH 367 17 Bit synchronous mapping of DS1/T1 SDH 368 18 Byte synchronous mapping of DS1/T1 SDH 369 19 Same as 16 but in a VC-12 SDH 370 (i.e. same as asynchronous mapping of DS1/T1) 371 20 Same as 17 but in a VC-12 SDH 372 (i.e. same as bit synchronous mapping of DS1/T1) 373 21 Same as 18 but in a VC-12 SDH 374 (i.e. same as byte synchronous mapping of DS1/T1) 375 22 DS1 SF Asynchronous SONET 376 23 DS1 ESF Asynchronous SONET 377 24 DS3 M23 Asynchronous SONET 378 25 DS3 C-Bit Parity Asynchronous SONET 379 26 VT/LOVC SONET 380 27 STS SPE/HOVC SONET 381 28 POS - No Scrambling, 16 bit CRC SONET 382 29 POS - No Scrambling, 32 bit CRC SONET 383 30 POS - Scrambling, 16 bit CRC SONET 384 31 POS - Scrambling, 32 bit CRC SONET 385 32 ATM mapping SONET, SDH 386 33 Ethernet SDH, Lambda, Fiber 387 34 SDH Lambda, Fiber 388 35 SONET Lambda, Fiber 389 36 Digital Wrapper Lambda, Fiber 390 37 Lambda Fiber 391 38 ETSI PDH SDH 392 39 ANSI PDH SDH/Sonet 394 3.1.2. Bandwidth Encoding 396 Bandwidth encodings are carried in in 32 bit number in IEEE floating 397 point format (the unit is bytes per second). For non-packet LSPs, it 398 is useful to define discrete values to identify the bandwidth of the 399 LSP. Some typical values for the requested bandwidth are enumerated 400 below. (These values are guidelines.) Additional values will be 401 defined as needed. Bandwidth encoding values are carried in a per 402 protocol specific manner, see [GMPLS-RSVP] and [GMPLS-LDP]. 404 Signal Type (Bit-rate) Value (Bytes/Sec) 405 (IEEE Floating point) 406 -------------- --------------- --------------------- 407 DS0 (0.064 Mbps) 0x45FA0000 408 DS1 (1.544 Mbps) 0x483C7A00 409 E1 (2.048 Mbps) 0x487A0000 410 DS2 (6.312 Mbps) 0x4940A080 411 E2 (8.448 Mbps) 0x4980E800 412 Ethernet (10.00 Mbps) 0x49989680 413 E3 (34.368 Mbps) 0x4A831A80 414 DS3 (44.736 Mbps) 0x4AAAA780 415 STS-1 (51.84 Mbps) 0x4AC5C100 416 Fast Ethernet (100.00 Mbps) 0x4B3EBC20 417 E4 (139.264 Mbps) 0x4B84D000 418 OC-3/STM-1 (155.52 Mbps) 0x4B9450C0 419 OC-12/STM-4 (622.08 Mbps) 0x4C9450C0 420 GigE (1000.00 Mbps) 0x4CEE6B28 421 OC-48/STM-16 (2488.32 Mbps) 0x4D9450C0 422 OC-192/STM-64 (9953.28 Mbps) 0x4E9450C0 423 10GigE-LAN (10000.00 Mbps) 0x4E9502F9 424 OC-768/STM-256 (39813.12 Mbps) 0x4F9450C0 426 3.2. Generalized Label 428 The Generalized Label extends the traditional label by allowing the 429 representation of not only labels which travel in-band with 430 associated data packets, but also labels which identify time-slots, 431 wavelengths, or space division multiplexed positions. For example, 432 the Generalized Label may carry a label that represents (a) a single 433 fiber in a bundle, (b) a single waveband within fiber, (c) a single 434 wavelength within a waveband (or fiber), or (d) a set of time-slots 435 within a wavelength (or fiber). It may also carry a label that 436 represents a generic MPLS label, a Frame Relay label, or an ATM label 437 (VCI/VPI). 439 A Generalized Label does not identify the "class" to which the label 440 belongs. This is implicit in the multiplexing capabilities of the 441 link on which the label is used. 443 A Generalized Label only carries a single level of label, i.e., it is 444 non-hierarchical. When multiple levels of label (LSPs within LSPs) 445 are required, each LSP must be established separately, see [MPLS- 446 HIERARCHY]. 448 Each Generalized Label object carries a variable length label 449 parameter. 451 3.2.1. Required Information 453 The information carried in a Generalized Label is: 455 0 1 2 3 456 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 457 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 458 | Label | 459 | ... | 460 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 462 Label: Variable 464 Carries label information. The interpretation of this field 465 depends on the type of the link over which the label is used. 467 3.2.1.1. Port and Wavelength Labels 469 Some configurations of fiber switching (FSC) and lambda switching 470 (LSC) use multiple data channels/links controlled by a single control 471 channel. In such cases the label indicates the data channel/link to 472 be used for the LSP. Note that this case is not the same as when 473 [MPLS-BUNDLING] is being used. 475 The information carried in a Port and Wavelength label is: 477 0 1 2 3 478 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 479 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 480 | Label | 481 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 483 Label: 32 bits 485 Indicates port/fiber or lambda to be used, from the sender's 486 perspective. Values used in this field only have significance 487 between two neighbors, and the receiver may need to convert the 488 received value into a value that has local significance. 489 Values may be configured or dynamically determined using a 490 protocol such as [LMP]. 492 3.2.1.2. Other Labels 494 Generic MPLS labels and Frame Relay labels are encoded right 495 justified aligned in 32 bits (4 octets). ATM labels are encoded with 496 the VPI right justified in bits 0-15 and the VCI right justified in 497 bits 16-31. 499 3.3. Waveband Switching 501 A special case of lambda switching is waveband switching. A waveband 502 represents a set of contiguous wavelengths which can be switched 503 together to a new waveband. For optimization reasons it may be 504 desirable for an optical cross connect to optically switch multiple 505 wavelengths as a unit. This may reduce the distortion on the 506 individual wavelengths and may allow tighter separation of the 507 individual wavelengths. The Waveband Label is defined to support 508 this special case. 510 Waveband switching naturally introduces another level of label 511 hierarchy and as such the waveband is treated the same way all other 512 upper layer labels are treated. 514 As far as the MPLS protocols are concerned there is little difference 515 between a waveband label and a wavelength label except that 516 semantically the waveband can be subdivided into wavelengths whereas 517 the wavelength can only be subdivided into time or statistically 518 multiplexed labels. 520 3.3.1. Required information 522 Waveband switching uses the same format as the generalized label, see 523 section 3.2.1. 525 In the context of waveband switching, the generalized label has the 526 following format: 527 0 1 2 3 528 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 529 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 530 | Waveband Id | 531 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 532 | Start Label | 533 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 534 | End Label | 535 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 537 Waveband Id: 32 bits 539 A waveband identifier. The value is selected by the sender and 540 reused in all subsequent related messages. 542 Start Label: 32 bits 544 Indicates the channel identifier, from the sender's 545 perspective, of the lowest value wavelength making up the 546 waveband. 548 End Label: 32 bits 550 Indicates the channel identifier, from the sender's 551 perspective, of the highest value wavelength making up the 552 waveband. 554 Channel identifiers are established either by configuration or by 555 means of a protocol such as LMP [LMP]. They are normally used in the 556 label parameter of the Generalized Label one PSC and LSC. 558 3.4. Suggested Label 560 The Suggested Label is used to provide a downstream node with the 561 upstream node's label preference. This permits the upstream node to 562 start configuring it's hardware with the proposed label before the 563 label is communicated by the downstream node. Such early 564 configuration is valuable to systems that take non-trivial time to 565 establish a label in hardware. Such early configuration can reduce 566 setup latency, and may be important for restoration purposes where 567 alternate LSPs may need to be rapidly established as a result of 568 network failures. 570 The use of Suggested Label is only an optimization. If a downstream 571 node passes a different label upstream, an upstream LSR reconfigures 572 itself so that it uses the label specified by the downstream node, 573 thereby maintaining the downstream control of a label. Note, the 574 transmission of a suggested label does not imply that the suggested 575 label is available for use. In particular, an ingress node should 576 not transmit data traffic on a suggested label until the downstream 577 node passes a label upstream. 579 The information carried in a suggested label is identical to a 580 generalized label. 582 3.5. Label Set 584 The Label Set is used to limit the label choices of a downstream node 585 to a set of acceptable labels. This limitation applies on a per hop 586 basis. 588 We describe four cases where a Label Set is useful in the optical 589 domain. The first case is where the end equipment is only capable of 590 transmitting on a small specific set of wavelengths/bands. The 591 second case is where there is a sequence of interfaces which cannot 592 support wavelength conversion (CI-incapable) and require the same 593 wavelength be used end-to-end over a sequence of hops, or even an 594 entire path. The third case is where it is desirable to limit the 595 amount of wavelength conversion being performed to reduce the 596 distortion on the optical signals. The last case is where two ends 597 of a link support different sets of wavelengths. 599 Label Set is used to restrict label ranges that may be used for a 600 particular LSP between two peers. The receiver of a Label Set must 601 restrict its choice of labels to one which is in the Label Set. Much 602 like a label, a Label Set may be present across multiple hops. In 603 this case each node generates it's own outgoing Label Set, possibly 604 based on the incoming Label Set and the node's hardware capabilities. 605 This case is expected to be the norm for nodes with conversion 606 incapable (CI-incapable) interfaces. 608 The use of Label Set is optional, if not present, all labels from the 609 valid label range may be used. Conceptually the absence of a Label 610 Set implies a Label Set whose value is {U}, the set of all valid 611 labels. 613 3.5.1. Required Information 615 A label set is composed of one or more Label_Set objects/TLVs. Each 616 object/TLV contains one or more elements of the Label Set. Each 617 element is referred to as a subchannel identifier and has the same 618 format as a generalized label. 620 The information carried in a Label_Set is: 622 0 1 2 3 623 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 624 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 625 | Action | Reserved | Label Type | 626 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 627 | Subchannel 1 | 628 | ... | 629 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 630 : : : 631 : : : 632 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 633 | Subchannel N | 634 | ... | 635 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 637 Action: 8 bits 639 0 - Inclusive List 641 Indicates that the object/TLV contains one or more 642 subchannel elements that are included in the Label Set. 644 1 - Exclusive List 646 Indicates that the object/TLV contains one or more 647 subchannel elements that are excluded from the Label Set. 649 2 - Inclusive Range 651 Indicates that the object/TLV contains a range of labels. 652 The object/TLV contains two subchannel elements. The first 653 element indicates the start of the range. The second 654 element indicates the end of the range. A value of zero 655 indicates that there is no bound on the corresponding 656 portion of the range. 658 3 - Exclusive Range 660 Indicates that the object/TLV contains a range of labels 661 that are excluded from the Label Set. The object/TLV 662 contains two subchannel elements. The first element 663 indicates the start of the range. The second element 664 indicates the end of the range. A value of zero indicates 665 that there is no bound on the corresponding portion of the 666 range. 668 Reserved: 10 bits 670 This field is reserved. It MUST be set to zero on transmission 671 and MUST be ignored on receipt. 673 Label Type: 14 bits 675 Indicates the type and format of the labels carried in the 676 object/TLV. Values are signaling protocol specific. 678 Subchannel: 680 The subchannel represents the label (wavelength, fiber ... ) 681 which is eligible for allocation. This field has the same 682 format as described for labels under section 3.2. 684 Note that subchannel to local channel identifiers (e.g., 685 wavelength) mappings are a local matter. 687 4. Bidirectional LSPs 689 This section defines direct support of bidirectional LSPs. Support 690 is defined for LSPs that have the same traffic engineering 691 requirements including fate sharing, protection and restoration, 692 LSRs, and resource requirements (e.g., latency and jitter) in each 693 direction. In the remainder of this section, the term "initiator" is 694 used to refer to a node that starts the establishment of an LSP and 695 the term "terminator" is used to refer to the node that is the target 696 of the LSP. Note that for bidirectional LSPs, there is only one 697 "initiator" and one "terminator". 699 Normally to establish a bidirectional LSP when using [RSVP-TE] or 700 [CR-LDP] two unidirectional paths must be independently established. 701 This approach has the following disadvantages: 703 * The latency to establish the bidirectional LSP is equal to one 704 round trip signaling time plus one initiator-terminator signaling 705 transit delay. This not only extends the setup latency for 706 successful LSP establishment, but it extends the worst-case 707 latency for discovering an unsuccessful LSP to as much as two 708 times the initiator-terminator transit delay. These delays are 709 particularly significant for LSPs that are established for 710 restoration purposes. 712 * The control overhead is twice that of a unidirectional LSP. 713 This is because separate control messages (e.g. Path and Resv) 714 must be generated for both segments of the bidirectional LSP. 716 * Because the resources are established in separate segments, 717 route selection is complicated. There is also additional 718 potential race for conditions in assignment of resources, which 719 decreases the overall probability of successfully establishing 720 the bidirectional connection. 722 * It is more difficult to provide a clean interface for SONET 723 equipment that may rely on bidirectional hop-by-hop paths for 724 protection switching. 726 * Bidirectional optical LSPs (or lightpaths) are seen as a 727 requirement for many optical networking service providers. 729 With bidirectional LSPs both the downstream and upstream data paths, 730 i.e., from initiator to terminator and terminator to initiator, are 731 established using a single set of signaling messages. This reduces 732 the setup latency to essentially one initiator-terminator round trip 733 time plus processing time, and limits the control overhead to the 734 same number of messages as a unidirectional LSP. 736 4.1. Required Information 738 For bidirectional LSPs, two labels must be allocated. Bidirectional 739 LSP setup is indicated by the presence of an Upstream Label 740 object/TLV in the appropriate signaling message. An Upstream Label 741 has the same format as the generalized label, see Section 3.2. 743 4.2. Contention Resolution 745 Contention for labels may occur between two bidirectional LSP setup 746 requests traveling in opposite directions. This contention occurs 747 when both sides allocate the same resources (labels) at effectively 748 the same time. If there is no restriction on the labels that can be 749 used for bidirectional LSPs and if there are alternate resources, 750 then both nodes will pass different labels upstream and there is no 751 contention. However, if there is a restriction on the labels that 752 can be used for the bidirectional LSPs (for example, if they must be 753 physically coupled on a single I/O card), or if there are no more 754 resources available, then the contention must be resolved by other 755 means. To resolve contention, the node with the higher node ID will 756 win the contention and it MUST issue a PathErr/NOTIFICATION message 757 with a "Routing problem/Label allocation failure" indication. Upon 758 receipt of such an error, the node SHOULD try to allocate a different 759 Upstream label (and a different Suggested Label if used) to the 760 bidirectional path. However, if no other resources are available, 761 the node must proceed with standard error handling. 763 To reduce the probability of contention, one may impose a policy that 764 the node with the lower ID never suggests a label in the downstream 765 direction and always accepts a Suggested Label from an upstream node 766 with a higher ID. Furthermore, since the labels may be exchanged 767 using LMP, an alternative local policy could further be imposed such 768 that (with respect to the higher numbered node's label set) the 769 higher numbered node could allocate labels from the high end of the 770 label range while the lower numbered node allocates labels from the 771 low end of the label range. This mechanism would augment any close 772 packing algorithms that may be used for bandwidth (or wavelength) 773 optimization. One special case that should be noted when using RSVP 774 and supporting this approach is that the neighbor's node ID might not 775 be known when sending an initial Path message. When this case 776 occurs, a node should suggest a label chosen at random from the 777 available label space. 779 An example of contention between two nodes (PXC 1 and PXC 2) is shown 780 in Figure 1. In this example PXC 1 assigns an Upstream Label for the 781 channel corresponding to local BCId=2 (local BCId=7 on PXC 2) and 782 sends a Suggested Label for the channel corresponding to local BCId=1 783 (local BCId=6 on PXC 2). Simultaneously, PXC 2 assigns an Upstream 784 Label for the channel corresponding to its local BCId=6 (local BCId=1 785 on PXC 1) and sends a Suggested Label for the channel corresponding 786 to its local BCId=7 (local BCId=2 on PXC 1). If there is no 787 restriction on the labels that can be used for bidirectional LSPs and 788 if there are alternate resources available, then both PXC 1 and PXC 2 789 will pass different labels upstream and the contention is resolved 790 naturally (see Fig. 2). However, if there is a restriction on the 791 labels that can be used for bidirectional LSPs (for example, if they 792 must be physically coupled on a single I/O card), then the contention 793 must be resolved using the node ID (see Fig. 3). 795 +------------+ +------------+ 796 + PXC 1 + + PXC 2 + 797 + + SL1,UL2 + + 798 + 1 +------------------------>+ 6 + 799 + + UL1, SL2 + + 800 + 2 +<------------------------+ 7 + 801 + + + + 802 + + + + 803 + 3 +------------------------>+ 8 + 804 + + + + 805 + 4 +<------------------------+ 9 + 806 +------------+ +------------+ 807 Figure 1. Label Contention 809 In this example, PXC 1 assigns an Upstream Label using BCId=2 (BCId=7 810 on PXC 2) and a Suggested Label using BCId=1 (BCId=6 on PXC 2). 812 Simultaneously, PXC 2 assigns an Upstream Label using BCId=6 (BCId=1 813 on PXC 1) and a Suggested Label using BCId=7 (BCId=2 on PXC 1). 815 +------------+ +------------+ 816 + PXC 1 + + PXC 2 + 817 + + UL2 + + 818 + 1 +------------------------>+ 6 + 819 + + UL1 + + 820 + 2 +<------------------------+ 7 + 821 + + + + 822 + + L1 + + 823 + 3 +------------------------>+ 8 + 824 + + L2 + + 825 + 4 +<------------------------+ 9 + 826 +------------+ +------------+ 827 Figure 2. Label Contention Resolution without resource restrictions 829 In this example, there is no restriction on the labels that can be 830 used by the bidirectional connection and there is no contention. 832 +------------+ +------------+ 833 + PXC 1 + + PXC 2 + 834 + + UL2 + + 835 + 1 +------------------------>+ 6 + 836 + + L2 + + 837 + 2 +<------------------------+ 7 + 838 + + + + 839 + + L1 + + 840 + 3 +------------------------>+ 8 + 841 + + UL1 + + 842 + 4 +<------------------------+ 9 + 843 +------------+ +------------+ 844 Figure 3. Label Contention Resolution with resource restrictions 846 In this example, labels 1,2 and 3,4 on PXC 1 (labels 6,7 and 8,9 on 847 PXC 2, respectively) must be used by the same bidirectional 848 connection. Since PXC 2 has a higher node ID, it wins the contention 849 and PXC 1 must use a different set of labels. 851 5. Notification on Label Error 853 There are cases in traditional MPLS and in GMPLS that result in an 854 error message containing an "Unacceptable label value" indication, 855 see [RSVP-TE], [GMPLS-LDP] and [GMPLS-RSVP]. When these cases occur, 856 it can useful for the node generating the error message to indicate 857 which labels would be acceptable. To cover this case, GMPLS 858 introduces the ability to convey such information via the "Acceptable 859 Label Set". An Acceptable Label Set is carried in appropriate 860 protocol specific error messages, see [GMPLS-LDP] and [GMPLS-RSVP]. 862 The format of an Acceptable Label Set is identical to a Label Set, 863 see section 3.5.1. 865 6. Explicit Label Control 867 In traditional MPLS, the interfaces used by an LSP may be controlled 868 via an explicit route, i.e., ERO or ER-Hop. This enables the 869 inclusion of a particular node/interface, and the termination of an 870 LSP on a particular outgoing interface of the egress LSR. Where the 871 interface may be numbered or unnumbered, see [MPLS-UNNUM]. 873 There are cases where the existing explicit route semantics do not 874 provide enough information to control the LSP to the degree desired. 875 This occurs in the case when the LSP initiator wishes to select a 876 label used on a link. Specifically, the problem is that ERO and ER- 877 Hop do not support explicit label sub-objects. An example case where 878 such a mechanism is desirable is where there are two LSPs to be 879 "spliced" together, i.e., where the tail of the first LSP would be 880 "spliced" into the head of the second LSP. This last case is more 881 likely to be used in the non-PSC classes of links. 883 To cover this case, the Label ERO subobject / ER Hop is introduced. 885 6.1. Required Information 887 The Label Explicit and Record Routes contains: 889 L: 1 bit 891 This bit must be set to 0. 893 U: 1 bit 895 This bit indicates the direction of the label. It is 0 for the 896 downstream label. It is set to 1 for the upstream label and is 897 only used on bidirectional LSPs. 899 Label: Variable 901 This field identifies the label to be used. The format of this 902 field is identical to the one used by the Label field in 903 Generalized Label, see Section 3.2.1. 905 Placement and ordering of these parameters are signaling protocol 906 specific. 908 7. Protection Information 910 Protection Information is carried in a new object/TLV. It is used to 911 indicate link related protection attributes of a requested LSP. The 912 use of Protection Information for a particular LSP is optional. 913 Protection Information currently indicates the link protection type 914 desired for the LSP. If a particular protection type, i.e., 1+1, or 915 1:N, is requested, then a connection request is processed only if the 916 desired protection type can be honored. Note that the protection 917 capabilities of a link may be advertised in routing, see [GMPLS-RTG]. 918 Path computation algorithms may take this information into account 919 when computing paths for setting up LSPs. 921 Protection Information also indicates if the LSP is a primary or 922 secondary LSP. A secondary LSP is a backup to a primary LSP. The 923 resources of a secondary LSP are not used until the primary LSP 924 fails. The resources allocated for a secondary LSP MAY be used by 925 other LSPs until the primary LSP fails over to the secondary LSP. At 926 that point, any LSP that is using the resources for the secondary LSP 927 MUST be preempted. 929 7.1. Required Information 931 The following information is carried in Protection Information: 933 0 1 2 3 934 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 935 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 936 |S| Reserved | Link Flags| 937 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 939 Secondary (S): 1 bit 941 When set, indicates that the requested LSP is a secondary LSP. 943 Reserved: 25 bits 945 This field is reserved. It MUST be set to zero on transmission 946 and MUST be ignored on receipt. 948 Link Flags: 6 bits 950 Indicates desired link protection type. As previously 951 mentioned, protection capabilities of a link may be advertised 952 in routing. A value of 0 implies that any, including no, link 953 protection may be used. More than one bit may be set to 954 indicate when multiple protection types are acceptable. When 955 multiple bits are set and multiple protection types are 956 available, the choice of protection type is a local (policy) 957 decision. 959 The following flags are defined: 961 0x20 Enhanced 963 Indicates that a protection scheme that is more reliable 964 than Dedicated 1+1 should be used, e.g., 4 fiber BLSR/MS- 965 SPRING. 967 0x10 Dedicated 1+1 969 Indicates that a dedicated link layer protection scheme, 970 i.e., 1+1 protection, should be used to support the LSP. 972 0x08 Dedicated 1:1 974 Indicates that a dedicated link layer protection scheme, 975 i.e., 1:1 protection, should be used to support the LSP. 977 0x04 Shared 979 Indicates that a shared link layer protection scheme, 980 such as 1:N protection, should be used to support the 981 LSP. 983 0x02 Unprotected 985 Indicates that the LSP should not use any link layer 986 protection. 988 0x01 Extra Traffic 990 Indicates that the LSP should use links that are 991 protecting other (primary) traffic. Such LSPs may be 992 preempted when the links carrying the (primary) traffic 993 being protected fail. 995 8. Administrative Status Information 997 Administrative Status Information is carried in a new object/TLV. 998 Administrative Status Information is currently used in two ways. In 999 the first, the information indicates administrative state with 1000 respect to a particular LSP. In this usage, Administrative Status 1001 Information indicates the state of the LSP. State indications 1002 include "up" or "down", if it in a "testing" mode, and if deletion is 1003 in progress. The actions taken by a node based on a state local 1004 decision. An example action that may be taken is to inhibit alarm 1005 reporting when an LSP is in "down" or "testing" states, or to report 1006 alarms associated with the connection at a priority equal to or less 1007 than "Non service affecting". 1009 In the second usage of Administrative Status Information, the 1010 information indicates a request to set an LSP's administrative state. 1011 This information is always relayed to the ingress node which acts on 1012 the request. 1014 The different usages are distinguished in a protocol specific 1015 fashion. See [GMPLS-RSVP] and [GMPLS-LDP] for details. The use of 1016 Administrative Status Information for a particular LSP is optional. 1018 8.1. Required Information 1020 The following information is carried in Administrative Status 1021 Information: 1023 0 1 2 3 1024 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 1025 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1026 |R| Reserved |T|A|D| 1027 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1029 Reflect (R): 1 bit 1031 When set, indicates that the edge node SHOULD reflect the 1032 object back in the appropriate message. This bit MUST NOT be 1033 set in state change request, i.e. Notify, messages. 1035 Reserved: 28 bits 1037 This field is reserved. It MUST be set to zero on transmission 1038 and MUST be ignored on receipt. 1040 Testing (T): 1 bit 1042 When set, indicates that the local actions related to the 1043 "testing" mode should be taken. 1045 Administratively down (A): 1 bit 1047 When set, indicates that the local actions related to the 1048 "administratively down" state should be taken. 1050 Deletion in progress (D): 1 bit 1052 When set, indicates that that the local actions related to LSP 1053 teardown should be taken. Edge nodes may use this flag to 1054 control connection teardown. 1056 9. Control Channel Separation 1058 The concept of a control channel being different than a data channel 1059 being signaled was introduced to MPLS in connection with link 1060 bundling, see [MPLS-BUNDLING]. In GMPLS, the separation of control 1061 and data channel may be due to any number of factors. (Including 1062 bundling and other cases such as data channels that cannot carry in- 1063 band control information.) This section will cover the two critical 1064 related issues: the identification of data channels in signaling and 1065 handling of control channel failures that don't impact data channels. 1067 9.1. Interface Identification 1069 In traditional MPLS there as an implicit one-to-one association of a 1070 control channel to a data channel. When such an association is 1071 present, no additional or special information is required to 1072 associate a particular LSP setup transaction with a particular data 1073 channel. (It's implicit in the control channel over which the 1074 signaling messages are sent.) 1076 In cases where there is not an explicit one-to-one association of 1077 control channels to data channels it is necessary to convey 1078 additional information in signaling to identify the particular data 1079 channel being controlled. GMPLS supports explicit data channel 1080 identification by providing interface identification information. 1081 GMPLS allows the use of a number of interface identification schemes 1082 including IPv4 or IPv6 addresses, interface indexes (see [MPLS- 1083 UNNUM]) and component interfaces (established via configuration or a 1084 protocol such as [LMP]). In all cases the choice of the data 1085 interface is indicated by the upstream node using addresses and 1086 identifiers used by the upstream node. 1088 9.1.1. Required Information 1090 The following information is carried in Interface_ID: 1092 0 1 2 3 1093 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 1094 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1095 | | 1096 ~ TLVs ~ 1097 | | 1098 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1100 Where each TLV has the following format: 1102 0 1 2 3 1103 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 1104 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1105 | Type | Length | 1106 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1107 | | 1108 ~ Value ~ 1109 | | 1110 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1112 Length: 16 bits 1114 Indicates the total length of the TLV, i.e., 4 + the length of 1115 the value field in octets. A value field whose length is not a 1116 multiple of four MUST be zero-padded so that the TLV is four- 1117 octet aligned. 1119 Type: 16 bits 1121 Indicates type of interface being identified. Defined values 1122 are: 1124 Type Length Format Description 1125 ----------------------------------------------------------------------- 1126 1 8 IPv4 Addr. IPv4 1127 2 20 IPv6 Addr. IPv6 1128 3 12 See below IF_INDEX (Interface Index) 1129 4 12 See below COMPONENT_IF_DOWNSTREAM (Component interface) 1130 5 12 See below COMPONENT_IF_UPSTREAM (Component interface) 1132 For types 3, 4 and 5 the Value field has the format: 1134 0 1 2 3 1135 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 1136 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1137 | IP Address | 1138 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1139 | Interface ID | 1140 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1141 IP Address: 32 bits 1143 The IP address field may carry either an IP address of a 1144 link, or an IP address associated with the router ID, 1145 where router ID may be the value carried in the router ID 1146 TLV of routing. See [MPLS-UNNUM] for details related to 1147 type 3 usage. 1149 Interface ID: 32 bits 1151 For type 3 usage, the Interface ID carries an interface 1152 identifier as defined in [MPLS-UNNUM]. 1154 For types 4 and 5, the Interface ID indicates a bundled 1155 component link, see [MPLS-BUNDLE]. The special value 1156 0xFFFFFFFF can be used to indicate the same label is to 1157 be valid across all component links. 1159 9.2. Fault Handling 1161 There are two new faults that must be handled when the control 1162 channel is independent of the data channel. In the first, there is a 1163 link or other type of failure the limits the ability of neighboring 1164 nodes to pass control messages. In this situation, neighboring nodes 1165 are unable to exchange control messages for a period of time. Once 1166 communication is restored the underlying signaling protocol must 1167 indicate that the nodes have maintained their state through the 1168 failure. The signaling protocol must also ensure that any state 1169 changes that were instantiated during the failure are synchronized 1170 between the nodes. 1172 In the the second, a node's control plane fails and then restarts and 1173 losses most of it's state information. In this case, both upstream 1174 and downstream nodes must synchronize their state information with 1175 the restarted node. In order for any resynchronization to occur the 1176 node undergoing the restart will need to preserve some information, 1177 such as it's mappings of incoming to outgoing labels. 1179 Both cases are addressed in protocol specific fashions, see [GMPLS- 1180 RSVP] and [GMPLS-LDP]. 1182 Note that these cases only apply when there are mechanisms to detect 1183 data channel failures independent of control channel failures. 1185 10. Acknowledgments 1187 This draft is the work of numerous authors and consists of a 1188 composition of a number of previous drafts in this area. A list of 1189 the drafts from which material and ideas were incorporated follows: 1191 draft-saha-rsvp-optical-signaling-00.txt 1192 draft-lang-mpls-rsvp-oxc-00.txt 1193 draft-kompella-mpls-optical-00.txt 1194 draft-fan-mpls-lambda-signaling-00.txt 1196 Valuable comments and input were received from a number of people, 1197 including Igor Bryskin, Adrian Farrel, Ben Mack-Crane, Dimitri 1198 Papadimitriou and Fong Liaw. Some sections of this document are 1199 based on text proposed by Fong Liaw. 1201 11. Security Considerations 1203 This draft introduce no new security considerations to either [CR- 1204 LDP] or [RSVP-TE]. 1206 12. IANA Considerations 1208 There are multiple fields and values defined within this document. 1209 IANA is requested to administer assignment of new values. All values 1210 should be allocated through an IETF Consensus action. 1212 13. References 1214 [CR-LDP] Jamoussi et al., "Constraint-Based LSP Setup using LDP", 1215 draft-ietf-mpls-cr-ldp-05.txt, February, 2001. 1217 [GMPLS-LDP] Ashwood-Smith, P. et al, "Generalized MPLS Signaling - 1218 CR-LDP Extensions", Internet Draft, 1219 draft-ietf-mpls-generalized-cr-ldp-05.txt, 1220 October, 2001. 1222 [GMPLS-RSVP] Ashwood-Smith, P. et al, "Generalized MPLS Signaling - 1223 RSVP-TE Extensions", Internet Draft, 1224 draft-ietf-mpls-generalized-rsvp-te-05.txt, 1225 October, 2001. 1227 [GMPLS-RTG] Kompella, K., et al, "Routing Extensions in Support 1228 of Generalized MPLS", Internet Draft, 1229 draft-ietf-ccamp-gmpls-routing-00.txt, September, 2001. 1231 [GMPLS-SONET] Ashwood-Smith, P. et al, "GMPLS - SONET / SDH Specifics", 1232 Internet Draft, draft-ietf-ccamp-gmpls-sonet-sdh-00.txt, 1233 April, 2001. 1235 [LDP] Andersson et al., "LDP Specification", RFC 3036. 1237 [LMP] Lang, et al. "Link Management Protocol", 1238 Internet Draft, draft-ietf-mpls-lmp-02.txt, March, 2001. 1240 [MPLS-ARCH] Rosen et al., "Multiprotocol label switching 1241 Architecture", RFC 3031. 1243 [MPLS-BUNDLE] Kompella, K., Rekhter, Y., and Berger, L., "Link Bundling 1244 in MPLS Traffic Engineering", Internet Draft, 1245 draft-kompella-mpls-bundle-05.txt, Feb., 2001. 1247 [MPLS-HIERARCHY] Kompella, K., and Rekhter, Y., "LSP Hierarchy with 1248 MPLS TE", Internet Draft, 1249 draft-ietf-mpls-lsp-hierarchy-02.txt, Feb., 2001. 1251 [MPLS-UNNUM] Kompella, K., Rekhter, Y., "Signalling Unnumbered Links 1252 in RSVP-TE", Internet Draft, 1253 draft-ietf-mpls-rsvp-unnum-01.txt, February 2001 1255 [RSVP-TE] Awduche, et. al., "RSVP-TE: Extensions to RSVP for LSP 1256 Tunnels," Internet Draft, 1257 draft-ietf-mpls-rsvp-lsp-tunnel-08.txt, Feb., 2001. 1259 [RECOVERY] Sharma, et al "A Framework for MPLS-based Recovery," 1260 draft-ieft-mpls-recovery-frmwrk-02.txt, March, 2001 1262 14. Authors' Addresses 1264 Peter Ashwood-Smith 1265 Nortel Networks Corp. 1266 P.O. Box 3511 Station C, 1267 Ottawa, ON K1Y 4H7 1268 Canada 1269 Phone: +1 613 763 4534 1270 Email: petera@nortelnetworks.com 1271 Ayan Banerjee 1272 Calient Networks 1273 5853 Rue Ferrari 1274 San Jose, CA 95138 1275 Phone: +1 408 972-3645 1276 Email: abanerjee@calient.net 1278 Lou Berger 1279 Movaz Networks, Inc. 1280 7926 Jones Branch Drive 1281 Suite 615 1282 McLean VA, 22102 1283 Phone: +1 703 847-1801 1284 Email: lberger@movaz.com 1286 Greg Bernstein 1287 Ciena Corporation 1288 10480 Ridgeview Court 1289 Cupertino, CA 94014 1290 Phone: +1 408 366 4713 1291 Email: greg@ciena.com 1293 John Drake 1294 Calient Networks 1295 5853 Rue Ferrari 1296 San Jose, CA 95138 1297 Phone: +1 408 972 3720 1298 Email: jdrake@calient.net 1300 Yanhe Fan 1301 Axiowave Networks, Inc. 1302 200 Nickerson Road 1303 Marlborough, MA 01752 1304 Phone: +1 774 348 4627 1305 Email: yfan@axiowave.com 1307 Kireeti Kompella 1308 Juniper Networks, Inc. 1309 1194 N. Mathilda Ave. 1310 Sunnyvale, CA 94089 1311 Email: kireeti@juniper.net 1313 Jonathan P. Lang 1314 Calient Networks 1315 25 Castilian 1316 Goleta, CA 93117 1317 Email: jplang@calient.net 1318 Eric Mannie 1319 EBONE 1320 Terhulpsesteenweg 6A 1321 1560 Hoeilaart - Belgium 1322 Phone: +32 2 658 56 52 1323 Mobile: +32 496 58 56 52 1324 Fax: +32 2 658 51 18 1325 Email: eric.mannie@ebone.com 1327 Bala Rajagopalan 1328 Tellium, Inc. 1329 2 Crescent Place 1330 P.O. Box 901 1331 Oceanport, NJ 07757-0901 1332 Phone: +1 732 923 4237 1333 Fax: +1 732 923 9804 1334 Email: braja@tellium.com 1336 Yakov Rekhter 1337 Juniper Networks, Inc. 1338 Email: yakov@juniper.net 1340 Debanjan Saha 1341 Tellium Optical Systems 1342 2 Crescent Place 1343 Oceanport, NJ 07757-0901 1344 Phone: +1 732 923 4264 1345 Fax: +1 732 923 9804 1346 Email: dsaha@tellium.com 1348 Vishal Sharma 1349 Metanoia, Inc. 1350 335 Elan Village Lane, Unit 203 1351 San Jose, CA 95134-2539 1352 Phone: +1 408-943-1794 1353 Email: v.sharma@ieee.org 1355 George Swallow 1356 Cisco Systems, Inc. 1357 250 Apollo Drive 1358 Chelmsford, MA 01824 1359 Voice: +1 978 244 8143 1360 Email: swallow@cisco.com 1361 Z. Bo Tang 1362 Tellium, Inc. 1363 2 Crescent Place 1364 P.O. Box 901 1365 Oceanport, NJ 07757-0901 1366 Phone: +1 732 923 4231 1367 Fax: +1 732 923 9804 1368 Email: btang@tellium.com 1370 Generated on: Mon Oct 1 02:08:48 EDT 2001