idnits 2.17.1 draft-ietf-isis-l2bundles-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The document has examples using IPv4 documentation addresses according to RFC6890, but does not use any IPv6 documentation addresses. Maybe there should be IPv6 examples, too? Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (May 24, 2017) is 2522 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) -- Possible downref: Non-RFC (?) normative reference: ref. 'IEEE802.1AX' -- Possible downref: Non-RFC (?) normative reference: ref. 'ISO10589' == Outdated reference: A later version (-25) exists of draft-ietf-isis-segment-routing-extensions-12 == Outdated reference: A later version (-15) exists of draft-ietf-spring-segment-routing-11 Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Networking Working Group L. Ginsberg 3 Internet-Draft A. Bashandy 4 Intended status: Standards Track C. Filsfils 5 Expires: November 25, 2017 Cisco Systems 6 M. Nanduri 7 eBay 8 E. Aries 9 Private Contributer 10 May 24, 2017 12 Advertising L2 Bundle Member Link Attributes in IS-IS 13 draft-ietf-isis-l2bundles-06.txt 15 Abstract 17 There are deployments where the Layer 3 interface on which IS-IS 18 operates is a Layer 2 interface bundle. Existing IS-IS 19 advertisements only support advertising link attributes of the Layer 20 3 interface. If entities external to IS-IS wish to control traffic 21 flows on the individual physical links which comprise the Layer 2 22 interface bundle link attribute information about the bundle members 23 is required. 25 This document introduces the ability for IS-IS to advertise the link 26 attributes of layer 2 (L2) bundle members. 28 Requirements Language 30 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 31 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 32 document are to be interpreted as described in RFC 2119 [RFC2119]. 34 Status of This Memo 36 This Internet-Draft is submitted in full conformance with the 37 provisions of BCP 78 and BCP 79. 39 Internet-Drafts are working documents of the Internet Engineering 40 Task Force (IETF). Note that other groups may also distribute 41 working documents as Internet-Drafts. The list of current Internet- 42 Drafts is at http://datatracker.ietf.org/drafts/current/. 44 Internet-Drafts are draft documents valid for a maximum of six months 45 and may be updated, replaced, or obsoleted by other documents at any 46 time. It is inappropriate to use Internet-Drafts as reference 47 material or to cite them other than as "work in progress." 48 This Internet-Draft will expire on November 25, 2017. 50 Copyright Notice 52 Copyright (c) 2017 IETF Trust and the persons identified as the 53 document authors. All rights reserved. 55 This document is subject to BCP 78 and the IETF Trust's Legal 56 Provisions Relating to IETF Documents 57 (http://trustee.ietf.org/license-info) in effect on the date of 58 publication of this document. Please review these documents 59 carefully, as they describe your rights and restrictions with respect 60 to this document. Code Components extracted from this document must 61 include Simplified BSD License text as described in Section 4.e of 62 the Trust Legal Provisions and are provided without warranty as 63 described in the Simplified BSD License. 65 Table of Contents 67 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 68 2. L2 Bundle Member Attributes TLV . . . . . . . . . . . . . . . 3 69 2.1. Parallel L3 Adjacencies . . . . . . . . . . . . . . . . . 5 70 2.2. Shared Attribute sub-TLVs . . . . . . . . . . . . . . . . 5 71 3. Advertising L2 Bundle Member Adj-SIDs . . . . . . . . . . . . 6 72 3.1. L2 Bundle Member Adjacency Segment Identifier sub-TLV . . 6 73 3.2. L2 Bundle Member LAN Adjacency Segment Identifier sub-TLV 7 74 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 75 5. Security Considerations . . . . . . . . . . . . . . . . . . . 11 76 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 11 77 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 78 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 79 8.1. Normative References . . . . . . . . . . . . . . . . . . 11 80 8.2. Informational References . . . . . . . . . . . . . . . . 12 81 Appendix A. Example Encoding . . . . . . . . . . . . . . . . . . 13 82 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 84 1. Introduction 86 There are deployments where the Layer 3 interface on which an IS-IS 87 adjacency is established is a Layer 2 interface bundle, for instance 88 a Link Aggregation Group (LAG) [IEEE802.1AX]. This reduces the 89 number of adjacencies which need to be maintained by the routing 90 protocol in cases where there are parallel links between the 91 neighbors. Entities external to IS-IS such as Path Computation 92 Elements (PCE) [RFC4655] may wish to control traffic flows on 93 individual members of the underlying Layer 2 bundle. In order to do 94 so link attribute information about individual bundle members is 95 required. The protocol extensions defined in this document provide 96 the means to advertise this information. 98 This document introduces a new TLV to advertise link attribute 99 information for each of the L2 bundle members which comprise the 100 Layer 3 interface on which IS-IS operates. 102 [SR-ISIS] introduces a new link attribute - adjacency segment 103 identifier (Adj-SID) - which can be used as an instruction to 104 forwarding to send traffic over a specific link. This document 105 introduces additional sub-TLVs to advertise Adj-SIDs for L2 Bundle 106 members. 108 Note that the new advertisements defined in this document are 109 intended to be provided to external (to IS-IS) entities. The 110 following items are intentionally not defined and/or are outside the 111 scope of this document: 113 o What link attributes will be advertised. This is determined by 114 the needs of the external entities. 116 o A minimum or default set of link attributes. 118 o How these attributes are configured 120 o How the advertisements are used 122 o What impact the use of these advertisements may have on traffic 123 flow in the network 125 o How the advertisements are passed to external entities 127 2. L2 Bundle Member Attributes TLV 129 A new TLV is introduced to advertise L2 Bundle member attributes. 130 Although much of the information is identical to and uses the same 131 sub-TLVs included in Extended IS-Neighbor advertisements (TLVs 22 and 132 222), a new TLV is used so that changes to the advertisement of the 133 L2 Bundle member link attributes does not trigger unnecessary action 134 by the [ISO10589] Decision process. 136 Advertisement of this information implies that the identified link is 137 a member of the L2 Bundle associated with the identified Parent L3 138 Neighbor and that the member link is operationally up. Therefore 139 advertisements MUST be withdrawn if the link becomes operationally 140 down or it is no longer a member of the identified L2 Bundle. 142 This new TLV utilizes the sub-TLV space defined for TLVs 22, 23, 141, 143 222, and 223. 145 The following new TLV is introduced: 147 L2 Bundle Member Attributes 148 Type: 25 (suggested - to be assigned by IANA) 149 Length: Number of octets to follow 151 Parent L3 Neighbor Descriptor 152 L3 Neighbor System ID + pseudonode ID (7 octets) 153 Flags: 1 octet field of following flags: 155 0 1 2 3 4 5 6 7 156 +-+-+-+-+-+-+-+-+ 157 |P| | 158 +-+-+-+-+-+-+-+-+ 160 where: 162 P-flag: When set to 1 one of the sub-TLVs described 163 in Section 2.1 immediately follows the flags field. 164 If the P-flag is set to 0, then none of the sub-TLVs 165 described in Section 2.1 are present. 167 Other bits: MUST be zero when originated and ignored when 168 received. 170 One or more of the following: 171 L2 Bundle Attribute Descriptors 172 Length of L2 Bundle Attribute Descriptor (1 octet) 173 NOTE: This includes all fields described below. 175 Number of L2 Bundle Member Descriptors (1 octet) 176 L2 Bundle Member Link Local Identifiers 177 (4 * Number of L2 Bundle Member Descriptors octets) 179 NOTE: An L2 Bundle Member Descriptor is a Link Local 180 Identifier as defined in [RFC4202]. 182 sub-TLV(s) 184 A sub-TLV may define an attribute common to all of 185 the bundle members listed or a sub-TLV may define an 186 attribute unique to each bundle member. Use of these 187 two classes of sub-TLVs is described in the following 188 sections. 190 NOTE: Only one Parent L3 Neighbor Descriptor is present in a given 191 TLV. Multiple L2 Bundle Attribute Descriptors may be present in a 192 single TLV. 194 2.1. Parallel L3 Adjacencies 196 When there exist multiple L3 adjacencies to the same neighbor 197 additional information is required to uniquely identify the L3 198 Neighbor. One and only one of the following three sub-TLVs is used 199 to uniquely identify the L3 adjacency: 201 o IPv4 Interface Address (sub-TLV 6 defined in [RFC5305]) 203 o IPv6 Interface Address (sub-TLV 12 defined in [RFC6119]) 205 o Link Local/Remote Identifiers (sub-TLV 4 defined in [RFC5307]) 207 When the P-bit is set in the flags field in the Parent L3 Neighbor 208 Descriptor one and only one of the above sub-TLVs MUST be present. 209 The chosen sub-TLV MUST immediately follow the flags field described 210 in Section 2. 212 These sub-TLVs MAY be omitted if no parallel adjacencies to the 213 neighbor exist. 215 2.2. Shared Attribute sub-TLVs 217 These sub-TLVs advertise a single copy of an attribute (e.g. link 218 bandwidth). The attribute applies to all of the L2 Bundle Members in 219 the set advertised under the preceding L2 Bundle Member Attribute 220 Descriptor. No more than one copy of a given sub-TLV in this 221 category may appear in the set of sub-TLVs under the preceding L2 222 Bundle Member Attribute Descriptor. If multiple copies of a given 223 sub-TLV are present all copies MUST be ignored. 225 The set of L2 Bundle Member Descriptors which may be advertised under 226 a single L2 Bundle Member Attribute Descriptor is therefore limited 227 to bundle members which share the set of attributes advertised in the 228 shared attribute sub-TLVs. 230 All existing sub-TLVs defined in the IANA Sub-TLVs for TLVs 22, 23, 231 141, 222, and 223 registry are in the category of shared attribute 232 sub-TLVs unless otherwise specified in this document. 234 3. Advertising L2 Bundle Member Adj-SIDs 236 [SR-ISIS] defines sub-TLVs to advertise Adj-SIDs for L3 adjacencies. 237 However these sub-TLVs only support a advertisement of a single Adj- 238 SID. As it is expected that each L2 Bundle member will have unique 239 Adj-SIDs in many deployments it is desirable to define a new sub-TLV 240 which allows more efficient encoding of a set of Adj-SIDs in a single 241 sub-TLV. Two new sub-TLVs are therefore introduced to support 242 advertising Adj-SIDs for L2 Bundle members. The format of the new 243 sub-TLVs is similar to that used for L3 adjacencies, but is optimized 244 to allow advertisement of a set of Adj-SIDs (one per L2 Bundle 245 Member) in a single sub-TLV. 247 The two new sub-TLVs defined in the following sections do not fall 248 into the category of shared attribute sub-TLVs. 250 3.1. L2 Bundle Member Adjacency Segment Identifier sub-TLV 252 This sub-TLV is used to advertise Adj-SIDs for L2 Bundle Members 253 associated with a parent L3 adjacency which is Point-to-Point. The 254 following format is defined for this sub-TLV: 256 Type: 41 (suggested value to be assigned by IANA) (1 octet) 257 Length: variable (1 octet) 259 Flags: 1 octet field of following flags: 261 0 1 2 3 4 5 6 7 262 +-+-+-+-+-+-+-+-+ 263 |F|*|V|L|S|P| | 264 +-+-+-+-+-+-+-+-+ 266 where: 268 NOTE: The flags are deliberately kept congruent to the flags 269 in the L3 ADJ-SID defined in [SR-ISIS]. 270 * indicates a flag used in the L3 Adj-SID sub-TLV but which is 271 NOT used in this sub-TLV. These bits SHOULD be sent as 0 and 272 MUST be ignored on receipt. 274 F-Flag: Address-Family flag. If unset, then the Adj-SID refers 275 to an L2 Bundle Member with outgoing IPv4 encapsulation. If set 276 then the Adj-SID refers to an L2 Bundle Member with outgoing 277 IPv6 encapsulation. 279 V-Flag: Value flag. If set, then the Adj-SID carries a value. 280 By default the flag is SET. 282 L-Flag: Local Flag. If set, then the value/index carried by 283 the Adj-SID has local significance. By default the flag is 284 SET. 286 S-Flag. Set Flag. When set, the S-Flag indicates that the 287 Adj-SID refers to a set of L2 Bundle Members (and therefore 288 MAY be assigned to other L2 Bundle Members as well). 290 P-Flag. Persistent flag. When set, the P-Flag indicates that 291 the Adj-SID is persistently allocated, i.e., the Adj-SID value 292 remains consistent across router restart and/or interface flap. 294 Other bits: MUST be zero when originated and ignored when 295 received. 297 Weight: 1 octet. The value represents the weight of the Adj-SID 298 for the purpose of load balancing. The use of the weight is 299 defined in [SR-ARCH]. 301 NOTE: Flags and weight are shared by all L2 Bundle Members 302 listed in the L2 Bundle Attribute Descriptor. 304 L2 Bundle Member Adj-SID Descriptors. There MUST be one descriptor 305 for each of the L2 Bundle Members advertised under the preceding 306 L2 Bundle Member Attribute Descriptor. Each descriptor consists 307 of one of the following fields: 309 SID/Index/Label: according to the V and L flags, it contains 310 either: 312 * A 3 octet local label where the 20 rightmost bits are used 313 for encoding the label value. In this case the V and L 314 flags MUST be set. 316 * A 4 octet index defining the offset in the SID/Label space 317 advertised by this router. See [SR-ISIS]. 318 In this case V and L flags MUST be unset. 320 3.2. L2 Bundle Member LAN Adjacency Segment Identifier sub-TLV 322 This sub-TLV is used to advertise Adj-SIDs for L2 Bundle Members 323 associated with a parent L3 adjacency which is a LAN adjacency. In 324 LAN subnetworks, the Designated Intermediate System (DIS) is elected 325 and originates the Pseudonode-LSP (PN-LSP) including all neighbors of 326 the DIS. When Segment Routing is used, each router in the LAN MAY 327 advertise the Adj-SID of each of its neighbors on the LAN. 329 Similarly, for each L2 Bundle Member a router MAY advertise an Adj- 330 SID to each neighbor on the LAN. 332 The following format is defined for this sub-TLV: 334 Type: 42 (suggested value to be assigned by IANA) (1 octet) 335 Length: variable (1 octet) 336 Neighbor System ID: 6 octets 338 Flags: 1 octet field of following flags: 340 0 1 2 3 4 5 6 7 341 +-+-+-+-+-+-+-+-+ 342 |F|*|V|L|S|P| | 343 +-+-+-+-+-+-+-+-+ 345 where: 347 NOTE: The flags are deliberately kept congruent to the flags 348 in the L3 LAN_ADJ-SID defined in [SR-ISIS]. 349 * indicates a flag used in the L3 Adj-SID sub-TLV but which is 350 NOT used in this sub-TLV. These bits SHOULD be sent as 0 and 351 MUST be ignored on receipt. 353 F-Flag: Address-Family flag. If unset, then the Adj-SID refers 354 to an L2 Bundle Member with outgoing IPv4 encapsulation. If set 355 then the Adj-SID refers to an L2 Bundle Member with outgoing 356 IPv6 encapsulation. 358 V-Flag: Value flag. If set, then the Adj-SID carries a value. 359 By default the flag is SET. 361 L-Flag: Local Flag. If set, then the value/index carried by 362 the Adj-SID has local significance. By default the flag is 363 SET. 365 S-Flag. Set Flag. When set, the S-Flag indicates that the 366 Adj-SID refers to a set of L2 Bundle Members (and therefore 367 MAY be assigned to other L2 Bundle Members as well). 369 P-Flag. Persistent flag. When set, the P-Flag indicates that 370 the Adj-SID is persistently allocated, i.e., the Adj-SID value 371 remains consistent across router restart and/or interface flap. 373 Other bits: MUST be zero when originated and ignored when 374 received. 376 Weight: 1 octet. The value represents the weight of the Adj-SID 377 for the purpose of load balancing. The use of the weight is 378 defined in [SR-ARCH]. 380 NOTE: Flags and weight are shared by all L2 Bundle Members 381 listed in the L2 Bundle Attribute Descriptor. 383 L2 Bundle Member LAN Adj-SID Descriptors. There MUST be one 384 descriptor for each of the L2 Bundle Members advertised 385 under the preceding L2 Bundle Member Attribute Descriptor. 386 Each descriptor consists of one of the following fields: 388 SID/Index/Label: according to the V and L flags, it contains 389 either: 391 * A 3 octet local label where the 20 rightmost bits are used 392 for encoding the label value. In this case the V and L 393 flags MUST be set. 395 * A 4 octet index defining the offset in the SID/Label space 396 advertised by this router. See [SR-ISIS]. 397 In this case V and L flags MUST be unset. 399 4. IANA Considerations 401 This document adds the following new TLV to the IS-IS TLV Codepoints 402 registry. 404 Value: 25 (suggested - to be assigned by IANA) 406 Name: L2 Bundle Member Attributes 408 The name of the Sub-TLVs for TLVs 22, 23, 141, 222, and 223 registry 409 needs to be changed to Sub-TLVs for TLVs 22, 23, 25, 141, 222, and 410 223 registry. An additional column needs to be added to the registry 411 to indicate which sub-TLVs may appear in the new L2 Bundle Member 412 Attributes TLV. The column for TLV 25 has one of the following three 413 values: 415 y - sub-TLV may appear in TLV 25 but MUST NOT be shared by multiple 416 L2 Bundle Members 417 y(s) - sub-TLV may appear in TLV 25 and MAY be shared by multiple 418 L2 Bundle Members 419 n - sub-TLV MUST NOT appear in TLV 25 420 The following table indicates the appropriate settings for all 421 currently defined sub-TLVs as regards their use in the new L2 Bundle 422 Member Attributes TLV. 424 3 Administrative group (color) y(s) 425 4 Link Local/Remote Identifiers y(s) 426 6 IPv4 interface address y(s) 427 8 IPv4 neighbor address y(s) 428 9 Maximum link bandwidth y(s) 429 10 Maximum reservable link bandwidth y(s) 430 11 Unreserved bandwidth y(s) 431 12 IPv6 Interface Address y(s) 432 13 IPv6 Neighbor Address y(s) 433 14 Extended Administrative Group y(s) 434 18 TE Default metric y(s) 435 19 Link-attributes y(s) 436 20 Link Protection Type y(s) 437 21 Interface Switching Capability Descriptor y(s) 438 22 Bandwidth Constraints y(s) 439 23 Unconstrained TE LSP Count y(s) 440 24 Remote AS number n 441 25 IPv4 remote ASBR Identifier n 442 26 IPv6 remote ASBR Identifier n 443 27 Interface Adjustment Capability Descriptor (IACD) y(s) 444 28 MTU n 445 29 SPB-Metric y(s) 446 30 SPB-A-OALG y(s) 447 33 Unidirectional Link Delay y 448 34 Min/Max Unidirectional Link Delay y 449 35 Unidirectional Delay Variation y 450 36 Unidirectional Link Loss y 451 37 Unidirectional Residual Bandwidth y 452 38 Unidirectional Available Bandwidth y 453 39 Unidirectional Utilized Bandwidth y 454 40 RTM Capability n 456 This document adds the following new sub-TLVs to the sub-TLVs for 457 TLVs 22, 23, 25, 141, 222, and 223 registry. 459 Value: 41 (suggested - to be assigned by IANA) 461 Name: L2 Bundle Member Adj-SID 463 This sub-TLV is allowed in the following TLVs: 465 22 23 25 141 222 223 466 n n y n n n 468 Value: 42 (suggested to be assigned by IANA) 470 Name: L2 Bundle Member LAN Adj-SID 472 This sub-TLV is allowed in the following TLVs: 474 22 23 25 141 222 223 475 n n y n n n 477 5. Security Considerations 479 No new security issues are introduced by the protocol extensions 480 defined inn this document. Security concerns for IS-IS are addressed 481 in [RFC5304] and [RFC5310]. 483 6. Contributors 485 The following people gave a substantial contribution to the content 486 of this document and should be considered as co-authors: 488 Stefano Previdi 489 Cisco Systems 490 Via Del Serafico 200 491 Rome 0144 492 Italy 494 Email: sprevidi@cisco.com 496 7. Acknowledgements 498 The authors would like to thank Jon MItchell for his careful review. 500 8. References 502 8.1. Normative References 504 [IEEE802.1AX] 505 Institute of Electrical and Electronics Engineers, "IEEE 506 Standard for Local and Metropolitan Area Networks - Link 507 Aggregation.", Nov 2008. 509 [ISO10589] 510 International Organization for Standardization, 511 "Intermediate system to Intermediate system intra-domain 512 routeing information exchange protocol for use in 513 conjunction with the protocol for providing the 514 connectionless-mode Network Service (ISO 8473)", ISO/ 515 IEC 10589:2002, Second Edition, Nov 2002. 517 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 518 Requirement Levels", BCP 14, RFC 2119, 519 DOI 10.17487/RFC2119, March 1997, 520 . 522 [RFC4202] Kompella, K., Ed. and Y. Rekhter, Ed., "Routing Extensions 523 in Support of Generalized Multi-Protocol Label Switching 524 (GMPLS)", RFC 4202, DOI 10.17487/RFC4202, October 2005, 525 . 527 [RFC5304] Li, T. and R. Atkinson, "IS-IS Cryptographic 528 Authentication", RFC 5304, DOI 10.17487/RFC5304, October 529 2008, . 531 [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic 532 Engineering", RFC 5305, DOI 10.17487/RFC5305, October 533 2008, . 535 [RFC5307] Kompella, K., Ed. and Y. Rekhter, Ed., "IS-IS Extensions 536 in Support of Generalized Multi-Protocol Label Switching 537 (GMPLS)", RFC 5307, DOI 10.17487/RFC5307, October 2008, 538 . 540 [RFC5310] Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., 541 and M. Fanto, "IS-IS Generic Cryptographic 542 Authentication", RFC 5310, DOI 10.17487/RFC5310, February 543 2009, . 545 [RFC6119] Harrison, J., Berger, J., and M. Bartlett, "IPv6 Traffic 546 Engineering in IS-IS", RFC 6119, DOI 10.17487/RFC6119, 547 February 2011, . 549 [SR-ISIS] "IS-IS Extensions for Segment Routing, draft-ietf-isis- 550 segment-routing-extensions-12(work in progress)", April 551 2017. 553 8.2. Informational References 555 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 556 Element (PCE)-Based Architecture", RFC 4655, 557 DOI 10.17487/RFC4655, August 2006, 558 . 560 [SR-ARCH] "Segment Routing Architecture, draft-ietf-spring-segment- 561 routing-11(work in progress)", February 2017. 563 Appendix A. Example Encoding 565 Below is an example encoding of L2 Bundle advertisements in a case 566 where we have two parallel adjacencies to the same neighbor whose 567 system-id is 1234.1234.1234.00. The two L2 bundles have the 568 following sets of attributes: 570 L3 Adjacency #1 571 L3 IPv4 local link address: 192.0.2.1 572 Four bundle members with the following attributes: 574 -------------------------------------------------- 575 Num | Link Local ID | Bandwidth | Adj-SID/Weight | 576 -------------------------------------------------- 577 1 | 0x11111111 | 1G | 0x11111/1 | 578 -------------------------------------------------- 579 2 | 0x11112222 | 1G | 0x11112/1 | 580 -------------------------------------------------- 581 3 | 0x11113333 | 10G | 0x11113/1 | 582 -------------------------------------------------- 583 4 | 0x11114444 | 10G | 0x11114/1 | 584 -------------------------------------------------- 586 L3 Adjacency #2 587 L3 IPv4 local link address: 192.0.2.2 588 Three bundle members with the following attributes: 590 -------------------------------------------------- 591 Num | Link Local ID | Bandwidth | Adj-SID/Weight | 592 -------------------------------------------------- 593 1 | 0x22221111 | 10G | 22221/1 | 594 -------------------------------------------------- 595 2 | 0x22222222 | 10G | 22222/1 | 596 -------------------------------------------------- 597 3 | 0x22223333 | 10G | 22223/1 | 598 -------------------------------------------------- 600 This requires two TLVs, one for each L3 adjacency. 602 TLV for Adjacency #1: 604 0 1 605 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 606 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 607 | Type(25) |Len: 64 | 608 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 609 Parent L3 Neighbor Descriptor 610 0 1 2 3 611 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 612 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 613 | Neighbor System-ID octets 1-4: 1234.1234 | 614 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 615 | System-ID octets 5-6: 1234 | P-node: 00 |1|0|0|0|0|0|0|0| 616 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 618 IPv4 Interface Address sub-TLV 619 0 1 620 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 621 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 622 | Type(6)) | Length(4) | 623 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 624 | IPv4 address:192.0.2.1 | 625 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 627 L2 Bundle Attribute Descriptors 628 0 1 2 3 629 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 630 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 631 |Len:9+6+10 = 25| # Desc: 2 | 632 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 633 | Link Local Identifier Bundle Member #1: 0x11111111 | 634 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 635 | Link Local Identifier Bundle Member #2: 0x11112222 | 636 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 638 Maximum Link Bandwidth sub-TLV 639 0 1 2 3 640 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 641 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 642 | Type(9) | Length(4) | 643 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 644 | Bandwidth Value: 1G/8 | 645 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 647 L2 Bundle Member Adjacency Segment Identifier sub-TLV 648 0 1 2 3 649 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 650 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 651 | Type(41) | Length(8) |0|0|1|1|0|0|0|0| Weight: 1 | 652 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 653 | Local Label Bundle Member #1: 0x11111 | 654 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 655 | Local Label Bundle Member #2: 0x11112 | 656 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 658 L2 Bundle Attribute Descriptors 659 0 1 2 3 660 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 661 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 662 |Len:9+6+10 = 25| # Desc: 2 | 663 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 664 | Link Local Identifier Bundle Member #3: 0x11113333 | 665 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 666 | Link Local Identifier Bundle Member #4: 0x11114444 | 667 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 669 Maximum Link Bandwidth sub-TLV 670 0 1 2 3 671 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 672 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 673 | Type(9) | Length(4) | 674 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 675 | Bandwidth Value: 10G/8 | 676 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 678 L2 Bundle Member Adjacency Segment Identifier sub-TLV 679 0 1 2 3 680 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 681 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 682 | Type(41) | Length(8) |0|0|1|1|0|0|0|0| Weight: 1 | 683 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 684 | Local Label Bundle Member #3: 0x11113 | 685 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 686 | Local Label Bundle Member #4: 0x11114 | 687 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 689 TLV for Adjacency #2 691 0 1 692 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 693 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 694 | Type(25) | Len: 46 | 695 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 697 Parent L3 Neighbor Descriptor 698 0 1 2 3 699 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 701 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 702 | Neighbor System-ID octets 1-4: 1234.1234 | 703 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 704 | System-ID octets 5-6: 1234 | P-node: 00 |1|0|0|0|0|0|0|0| 705 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 707 IPv4 Interface Address sub-TLV 708 0 1 709 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 710 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 711 | Type(6)) | Length(4) | 712 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 713 | IPv4 address: 192.0.2.2 | 714 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 716 L2 Bundle Attribute Descriptors 717 0 1 2 3 718 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 719 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 720 |Len:13+6+13=32 | # Desc: 3 | 721 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 722 | Link Local Identifier Bundle Member #1: 0x22221111 | 723 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 724 | Link Local Identifier Bundle Member #2: 0x22222222 | 725 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 726 | Link Local Identifier Bundle Member #3: 0x22223333 | 727 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 729 Maximum Link Bandwidth sub-TLV 730 0 1 2 3 731 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 732 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 733 | Type(9) | Length(4) | 734 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 735 | Bandwidth Value: 10G/8 | 736 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 738 L2 Bundle Member Adjacency Segment Identifier sub-TLV 739 0 1 2 3 740 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 741 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 742 | Type(41) | Length(11) |0|0|1|1|0|0|0|0| Weight: 1 | 743 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 744 | Local Label Bundle Member #1: 0x22221 | 745 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 746 | Local Label Bundle Member #2: 0x22222 | 747 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 748 | Local Label Bundle Member #3: 0x22223 | 749 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 751 Authors' Addresses 753 Les Ginsberg 754 Cisco Systems 755 510 McCarthy Blvd. 756 Milpitas, CA 95035 757 USA 759 Email: ginsberg@cisco.com 761 Ahmed Bashandy 762 Cisco Systems 763 170 West Tasman Drive 764 San Jose, Ca 95134 765 US 767 Clarence Filsfils 768 Cisco Systems 770 Email: cf@cisco.com 772 Mohan Nanduri 773 eBay 775 Email: mnanduri@ebay.com 777 Ebben Aries 778 Private Contributer 780 Email: exa@dscp.org