idnits 2.17.1 draft-eastlake-isis-rfc6326bis-09.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 : ---------------------------------------------------------------------------- == There are 2 instances of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 1687 has weird spacing: '...Section sub-...' -- The document date (August 16, 2012) is 4270 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) -- Looks like a reference, but probably isn't: '2' on line 1664 -- Looks like a reference, but probably isn't: '3' on line 1665 -- Looks like a reference, but probably isn't: '4' on line 1666 -- Looks like a reference, but probably isn't: '5' on line 1667 -- Looks like a reference, but probably isn't: '6' on line 1668 -- Looks like a reference, but probably isn't: '7' on line 1672 -- Looks like a reference, but probably isn't: '8' on line 1673 -- Looks like a reference, but probably isn't: '15' on line 1681 -- Looks like a reference, but probably isn't: '16' on line 1682 -- Looks like a reference, but probably isn't: '17' on line 1683 -- Looks like a reference, but probably isn't: '18' on line 1684 -- Possible downref: Non-RFC (?) normative reference: ref. 'ISO-10589' ** Obsolete normative reference: RFC 4971 (Obsoleted by RFC 7981) ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) ** Obsolete normative reference: RFC 6327 (Obsoleted by RFC 7177) ** Obsolete normative reference: RFC 6439 (Obsoleted by RFC 8139) -- Obsolete informational reference (is this intentional?): RFC 6326 (ref. 'Err2869') (Obsoleted by RFC 7176) -- Obsolete informational reference (is this intentional?): RFC 5342 (Obsoleted by RFC 7042) -- Duplicate reference: RFC6326, mentioned in 'RFC6326', was also mentioned in 'Err2869'. -- Obsolete informational reference (is this intentional?): RFC 6326 (Obsoleted by RFC 7176) Summary: 4 errors (**), 0 flaws (~~), 3 warnings (==), 17 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group Donald Eastlake 2 INTERNET-DRAFT Huawei 3 Intended status: Proposed Standard Tissa Senevirathne 4 Obsoletes: 6326 Cisco 5 Anoop Ghanwani 6 Dell 7 Dinesh Dutt 8 Ayan Banerjee 9 Cumulus Networks 10 Expires: February 15, 2013 August 16, 2012 12 Transparent Interconnection of Lots of Links (TRILL) Use of IS-IS 13 15 Abstract 17 The IETF TRILL (Transparent Interconnection of Lots of Links) 18 protocol provides optimal pair-wise data frame forwarding without 19 configuration in multi-hop networks with arbitrary topology and link 20 technology, and support for multipathing of both unicast and 21 multicast traffic. This document specifies the data formats and code 22 points for the IS-IS extensions to support TRILL. These data formats 23 and code points may also be used by technologies other than TRILL. 24 This document obsoletes RFC 6326. 26 Status of This Memo 28 This Internet-Draft is submitted to IETF in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Distribution of this document is unlimited. Comments should be sent 32 to the TRILL working group mailing list. 34 Internet-Drafts are working documents of the Internet Engineering 35 Task Force (IETF), its areas, and its working groups. Note that 36 other groups may also distribute working documents as Internet- 37 Drafts. 39 Internet-Drafts are draft documents valid for a maximum of six months 40 and may be updated, replaced, or obsoleted by other documents at any 41 time. It is inappropriate to use Internet-Drafts as reference 42 material or to cite them other than as "work in progress." 44 The list of current Internet-Drafts can be accessed at 45 http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft 46 Shadow Directories can be accessed at 47 http://www.ietf.org/shadow.html. 49 Table of Contents 51 1. Introduction............................................3 52 1.1 Conventions Used in This Document....................3 53 2. TLV and Sub-TLV Extensions to IS-IS for TRILL..........5 54 2.1 Group Address TLV....................................5 55 2.1.1 Group MAC Address Sub-TLV..........................5 56 2.1.2 Group IPv4 Address Sub-TLV.........................7 57 2.1.3 Group IPv6 Address Sub-TLV.........................8 58 2.1.4 Group Labeled MAC Address Sub-TLV..................8 59 2.1.5 Group Labeled IPv4 Address Sub-TLV................10 60 2.1.6 Group Labeled IPv6 Address Sub-TLV................11 61 2.2 Multi-Topology-Aware Port Capability Sub-TLVs.......11 62 2.2.1 Special VLANs and Flags Sub-TLV...................12 63 2.2.2 Enabled-VLANs Sub-TLV.............................13 64 2.2.3 Appointed Forwarders Sub-TLV......................14 65 2.2.4 Port TRILL Version Sub-TLV........................15 66 2.2.5 VLANs Appointed Sub-TLV...........................16 67 2.3 Sub-TLVs of the Router and MT Capability TLVs.......17 68 2.3.1 TRILL Version Sub-TLV.............................17 69 2.3.2 Nickname Sub-TLV..................................18 70 2.3.3 Trees Sub-TLV.....................................19 71 2.3.4 Tree Identifiers Sub-TLV..........................20 72 2.3.5 Trees Used Identifiers Sub-TLV....................21 73 2.3.6 Interested VLANs and Spanning Tree Roots Sub-TLV..21 74 2.3.7 VLAN Group Sub-TLV................................24 75 2.3.8 Interested Labels and Spanning Tree Roots Sub-TLV.24 76 2.3.9 RBridge Channel Protocols Sub-TLV.................26 77 2.3.10 Affinity Sub-TLV.................................28 78 2.3.11 Label Group Sub-TLV..............................30 79 2.4 MTU Sub-TLV for Ext. Reachability and MT ISN TLVs...30 80 2.5 TRILL Neighbor TLV..................................31 81 3. MTU PDUs...............................................34 82 4. Use of Existing PDUs and TLVs..........................35 83 4.1 TRILL IIH PDUs......................................35 84 4.2 Area Address........................................35 85 4.3 Protocols Supported.................................35 86 4.4 Link State PDUs (LSPs)..............................36 87 4.5 Originating LSP Buffer Size.........................36 88 5. IANA Considerations....................................37 89 5.1 TLVs................................................37 90 5.2 sub-TLVs............................................37 91 5.3 PDUs................................................39 92 5.4 Reserved and Capability Bits........................39 93 5.5 TRILL Neighbor Record Flags.........................39 94 6. Security Considerations................................41 95 7. Change from RFC 6326...................................42 96 8. Normative References...................................44 97 9. Informative References.................................45 98 Acknowledgements..........................................47 100 1. Introduction 102 The IETF TRILL (Transparent Interconnection of Lots of Links) 103 protocol [RFC6325] [RFC6327] provides transparent forwarding in 104 multi-hop networks with arbitrary topology and link technologies 105 using encapsulation with a hop count and link state routing. TRILL 106 provides optimal pair-wise forwarding without configuration, safe 107 forwarding even during periods of temporary loops, and support for 108 multipathing of both unicast and multicast traffic. Intermediate 109 Systems (ISs) implementing TRILL are called RBridges (Routing 110 Bridges) or TRILL Switches. 112 This document, in conjunction with [RFC6165], specifies the data 113 formats and code points for the IS-IS [ISO-10589] [RFC1195] 114 extensions to support TRILL. These data formats and code points may 115 also be used by technologies other than TRILL. 117 This document obsoletes [RFC6326], which generally corresponded to 118 the base TRILL protocol as the TRILL Working Group passed it up to 119 the IESG in 2009. There has been substantial development of TRILL 120 since them. The main changes from [RFC6326] are summarized below and 121 a full list is given in Section 7. 123 1. Addition of multicast group announcements by IPv4 and IPv6 124 address. 126 2. Addition of facilities for announcing capabilities supported. 128 3. Addition of a tree affinity sub-TLV whereby ISs can request 129 distribution tree association. 131 4. Addition of multi-topology support. 133 5. Addition of control plane support for TRILL Data frame fine- 134 grained labels. This support is independent of the data plane 135 representation. 137 6. Fix the reported errata [Err2869] in [RFC6326]. 139 Changes herein to TLVs and sub-TLVs specified in [RFC6326] are 140 backwards compatible. 142 1.1 Conventions Used in This Document 144 The terminology and acronyms defined in [RFC6325] are used herein 145 with the same meaning. 147 Additional acronyms and phrases used in this document are: 149 BVL - Bit Vector Length 151 BVO - Bit Vector Offset 153 IIH - IS-IS Hello 155 IS - Intermediate System. For this document, all relevant 156 intermediate systems are RBridges [RFC6325]. 158 NLPID - Network Layer Protocol Identifier 160 SNPA - SubNetwork Point of Attachment (MAC Address) 162 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 163 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 164 document are to be interpreted as described in [RFC2119]. 166 2. TLV and Sub-TLV Extensions to IS-IS for TRILL 168 This section, in conjunction with [RFC6165], specifies the data 169 formats and code points for the TLVs and sub-TLVs for IS-IS to 170 support the IETF TRILL protocol. Information as to the number of 171 occurrences allowed, such as for a TLV in a PDU or set of PDUs or for 172 a sub-TLV in a TLV, is summarized in Section 5. 174 2.1 Group Address TLV 176 The Group Address (GADDR) TLV, IS-IS TLV type 142, is carried in an 177 LSP PDU and carries sub-TLVs that in turn advertise multicast group 178 listeners. The sub-TLVs that advertises listeners are specified 179 below. The sub-TLVs under GADDR constitute a new series of sub-TLV 180 types (see Section 5.2). 182 GADDR has the following format: 184 +-+-+-+-+-+-+-+-+ 185 |Type=GADDR-TLV | (1 byte) 186 +-+-+-+-+-+-+-+-+ 187 | Length | (1 byte) 188 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-... 189 | sub-TLVs... 190 +-+-+-+-+-+-+-+-+-+-+-+-+-+-... 192 o Type: TLV Type, set to GADDR-TLV 142. 194 o Length: variable depending on the sub-TLVs carried. 196 o sub-TLVs: The Group Address TLV value consists of sub-TLVs 197 formatted as described in [RFC5305]. 199 2.1.1 Group MAC Address Sub-TLV 201 The Group MAC Address (GMAC-ADDR) sub-TLV is sub-TLV type number 1 202 within the GADDR TLV. In TRILL, it is used to advertise multicast 203 listeners by MAC address as specified in Section 4.5.5 of [RFC6325]. 204 It has the following format: 206 +-+-+-+-+-+-+-+-+ 207 |Type=GMAC-ADDR | (1 byte) 208 +-+-+-+-+-+-+-+-+ 209 | Length | (1 byte) 210 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 211 | RESV | Topology-ID | (2 bytes) 212 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 213 | RESV | VLAN ID | (2 bytes) 214 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 215 |Num Group Recs | (1 byte) 216 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 217 | GROUP RECORDS (1) | 218 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 219 | GROUP RECORDS (2) | 220 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 221 | ................. | 222 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 223 | GROUP RECORDS (N) | 224 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 226 where each group record is of the following form with k=6: 228 +-+-+-+-+-+-+-+-+ 229 | Num of Sources| (1 byte) 230 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 231 | Group Address (k bytes) | 232 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 233 | Source 1 Address (k bytes) | 234 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 235 | Source 2 Address (k bytes) | 236 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 237 | ..... | 238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 239 | Source M Address (k bytes) | 240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 242 o Type: GADDR sub-TLV type, set to 1 (GMAC-ADDR). 244 o Length: 5 + m + k*n = 5 + m + 6*n where m is the number of group 245 records and n is the sum of the number of group and source 246 addresses. 248 o RESV: Reserved. 4-bit fields that MUST be sent as zero and 249 ignored on receipt. 251 o Topology-ID: This field carries a topology ID [RFC5120] or zero if 252 topologies are not in use. 254 o VLAN ID: This carries the 12-bit VLAN identifier for all 255 subsequent MAC addresses in this sub-TLV, or the value zero if no 256 VLAN is specified. 258 o Number of Group Records: A 1-byte unsigned integer that is the 259 number of group records in this sub-TLV. 261 o Group Record: Each group record carries the number of sources. If 262 this field is zero, it indicates a listener for (*,G), that is, a 263 listener not restricted by source. It then has a 6-byte (48-bit) 264 multicast MAC address followed by 6-byte source MAC addresses. If 265 the sources do not fit in a single sub-TLV, the same group address 266 may be repeated with different source addresses in another sub-TLV 267 of another instance of the Group Address TLV. 269 The GMAC-ADDR sub-TLV is carried only within a GADDR TLV. 271 2.1.2 Group IPv4 Address Sub-TLV 273 The Group IPv4 Address (GIP-ADDR) sub-TLV is IS-IS sub-TLV type TBD 274 [2 suggested] within the GADDR TLV. It has the same format as the 275 Group MAC Address sub-TLV described in Section 2.1.1 except that k=4. 276 The fields are as follows: 278 o Type: sub-TLV Type, set to TBD [2 suggested] (GIP-ADDR). 280 o Length: 5 + m + k*n = 5 + m + 4*n where m is the number of group 281 records and n is the sum of the number of group and source 282 addresses. 284 o Topology-Id: This field carries a topology ID [RFC5120] or zero if 285 topologies are not in use. 287 o RESV: Must be sent as zero on transmission and is ignored on 288 receipt. 290 o VLAN-ID: This carries a 12-bit VLAN identifier that is valid for 291 all subsequent addresses in this sub-TLV, or the value zero if no 292 VLAN is specified. 294 o Number of Group Records: This is of length 1 byte and lists the 295 number of group records in this sub-TLV. 297 o Group Record: Each group record carries the number of sources. If 298 this field is zero, it indicates a listener for (*,G), that is, a 299 listener not restricted by source. It then has a 4-byte (32-bit) 300 IPv4 Group Address followed by 4-byte source IPv4 addresses. If 301 the number of sources do not fit in a single sub-TLV, it is 302 permitted to have the same group address repeated with different 303 source addresses in another sub-TLV of another instance of the 304 Group Address TLV. 306 The GIP-ADDR sub-TLV is carried only within a GADDR TLV. 308 2.1.3 Group IPv6 Address Sub-TLV 310 The Group IPv6 Address (GIPV6-ADDR) sub-TLV is IS-IS sub-TLV type TBD 311 [3 suggested] within the GADDR TLV. It has the same format as the 312 Group MAC Address sub-TLV described in Section 2.1.1 except that 313 k=16. The fields are as follows: 315 o Type: sub-TLV Type, set to TBD [3 suggested] (GIPV6-ADDR). 317 o Length: 5 + m + k*n = 5 + m + 16*n where m is the number of group 318 records and n is the sum of the number of group and source 319 addresses. 321 o Topology-Id: This field carries a topology ID [RFC5120] or zero if 322 topologies are not in use. 324 o RESV: Must be sent as zero on transmission and is ignored on 325 receipt. 327 o VLAN-ID: This carries a 12-bit VLAN identifier that is valid for 328 all subsequent addresses in this sub-TLV, or the value zero if no 329 VLAN is specified. 331 o Number of Group Records: This is of length 1 byte and lists the 332 number of group records in this sub-TLV. 334 o Group Record: Each group record carries the number of sources. If 335 this field is zero, it indicates a listener for (*,G), that is, a 336 listener not restricted by source. It then has a 16-byte (128-bit) 337 IPv6 Group Address followed by 16-byte source IPv6 addresses. If 338 the number of sources do not fit in a single sub-TLV, it is 339 permitted to have the same group address repeated with different 340 source addresses in another sub-TLV of another instance of the 341 Group Address TLV. 343 The GIPV6-ADDR sub-TLV is carried only within a GADDR TLV. 345 2.1.4 Group Labeled MAC Address Sub-TLV 347 The GMAC-ADDR sub-TLV of the Group Address (GADDR) TLV specified in 348 Section 2.1.1 provides for a VLAN-ID. The Group Labeled MAC Address 349 sub-TLV, below, extends this to a fine-grained label. 351 +-+-+-+-+-+-+-+-+ 352 |Type=GLMAC-ADDR| (1 byte) 353 +-+-+-+-+-+-+-+-+ 354 | Length | (1 byte) 355 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 356 | RESV | Topology-ID | (2 bytes) 357 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 358 | Fine-Grained Label | (3 bytes) 359 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 360 |Num Group Recs | (1 byte) 361 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 362 | GROUP RECORDS (1) | 363 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 364 | GROUP RECORDS (2) | 365 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 366 | ................. | 367 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 368 | GROUP RECORDS (N) | 369 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 371 where each group record is of the following form with k=6: 373 +-+-+-+-+-+-+-+-+ 374 | Num of Sources| (1 byte) 375 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 376 | Group Address (k bytes) | 377 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 378 | Source 1 Address (k bytes) | 379 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 380 | Source 2 Address (k bytes) | 381 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 382 | ..... | 383 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 384 | Source M Address (k bytes) | 385 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 387 o Type: GADDR sub-TLV Type, set to TBD [4 suggested] (GLMAC-ADDR). 389 o Length: 6 + m + k*n = 6 + m + 6*n where m is the number of group 390 records and n is the sum of the number of group and source 391 addresses. 393 o RESV: Reserved. 4-bit field that MUST be sent as zero and ignored 394 on receipt. 396 o Topology-ID: This field carries a topology ID [RFC5120] or zero if 397 topologies are not in use. 399 o Label: This carries the fine-grained label identifier for all 400 subsequent MAC addresses in this sub-TLV, or the value zero if no 401 label is specified. 403 o Number of Group Records: A 1-byte unsigned integer that is the 404 number of group records in this sub-TLV. 406 o Group Record: Each group record carries the number of sources. If 407 this field is zero, it indicates a listener for (*,G), that is, a 408 listener not restricted by source. It then has a 6-byte (48-bit) 409 multicast address followed by 6-byte source MAC addresses. If the 410 sources do not fit in a single sub-TLV, the same group address may 411 be repeated with different source addresses in another sub-TLV of 412 another instance of the Group Address TLV. 414 The GLMAC-ADDR sub-TLV is carried only within a GADDR TLV. 416 2.1.5 Group Labeled IPv4 Address Sub-TLV 418 The Group Labeled IPv4 Address (GLIP-ADDR) sub-TLV is IS-IS sub-TLV 419 type TBD [5 suggested] within the GADDR TLV. It has the same format 420 as the Group Labeled MAC Address sub-TLV described in Section 2.1.4 421 except that k=4. The fields are as follows: 423 o Type: sub-TLV Type, set to TBD [5 suggested] (GLIP-ADDR). 425 o Length: 6 + m + k*n = 6 + m + 4*n where m is the number of group 426 records and n is the sum of the number of group and source 427 addresses. 429 o Topology-Id: This field carries a topology ID [RFC5120] or zero if 430 topologies are not in use. 432 o RESV: Must be sent as zero on transmission and is ignored on 433 receipt. 435 o Label: This carries the fine-grained label identifier for all 436 subsequent IPv4 addresses in this sub-TLV, or the value zero if no 437 label is specified. 439 o Number of Group Records: This is of length 1 byte and lists the 440 number of group records in this sub-TLV. 442 o Group Record: Each group record carries the number of sources. If 443 this field is zero, it indicates a listener for (*,G), that is, a 444 listener not restricted by source. It then has a 4-byte (32-bit) 445 IPv4 Group Address followed by 4-byte source IPv4 addresses. If 446 the number of sources do not fit in a single sub-TLV, it is 447 permitted to have the same group address repeated with different 448 source addresses in another sub-TLV of another instance of the 449 Group Address TLV. 451 The GLIP-ADDR sub-TLV is carried only within a GADDR TLV. 453 2.1.6 Group Labeled IPv6 Address Sub-TLV 455 The Group Labeled IPv6 Address (GLIPV6-ADDR) sub-TLV is IS-IS sub-TLV 456 type TBD [6 suggested] within the GADDR TLV. It has the same format 457 as the Group Labeled MAC Address sub-TLV described in Section 2.1.4 458 except that k=16. The fields are as follows: 460 o Type: sub-TLV Type, set to TBD [6 suggested] (GLIPV6-ADDR). 462 o Length: 6 + m + k*n = 6 + m + 16*n where m is the number of group 463 records and n is the sum of the number of group and source 464 addresses. 466 o Topology-Id: This field carries a topology ID [RFC5120] or zero if 467 topologies are not in use. 469 o RESV: Must be sent as zero on transmission and is ignored on 470 receipt. 472 o Label: This carries the fine-grained label identifier for all 473 subsequent IPv6 addresses in this sub-TLV, or the value zero if no 474 label is specified. 476 o Number of Group Records: This of length 1 byte and lists the 477 number of group records in this sub-TLV. 479 o Group Record: Each group record carries the number of sources. If 480 this field is zero, it indicates a listener for (*,G), that is, a 481 listener not restricted by source. It then has a 16-byte (128-bit) 482 IPv6 Group Address followed by 16-byte source IPv6 addresses. If 483 the number of sources do not fit in a single sub-TLV, it is 484 permitted to have the same group address repeated with different 485 source addresses in another sub-TLV of another instance of the 486 Group Address TLV. 488 The GLIPV6-ADDR sub-TLV is carried only within a GADDR TLV. 490 2.2 Multi-Topology-Aware Port Capability Sub-TLVs 492 TRILL makes use of the Multi-Topology-Aware Port Capability (MT-PORT- 493 CAP) TLV as specified in [RFC6165]. The following subsections of 494 this Section 2.2 specify the sub-TLVs transported by the MT-PORT-CAP 495 TLV for TRILL. 497 2.2.1 Special VLANs and Flags Sub-TLV 499 In TRILL, a Special VLANs and Flags (VLAN-Flags) sub-TLV is carried 500 in every IIH PDU. It has the following format: 502 +-+-+-+-+-+-+-+-+ 503 | Type | (1 byte) 504 +-+-+-+-+-+-+-+-+ 505 | Length | (1 byte) 506 +---------------+---------------+ 507 | Port ID | (2 bytes) 508 +-------------------------------+ 509 | Sender Nickname | (2 bytes) 510 +--+--+--+--+-------------------+ 511 |AF|AC|VM|BY| Outer.VLAN | (2 bytes) 512 +--+--+--+--+-------------------+ 513 |TR|R |R |R | Desig.VLAN | (2 bytes) 514 +--+--+--+--+-------------------+ 516 o Type: sub-TLV type, set to MT-PORT-CAP VLAN-FLAGs sub-TLV 1. 518 o Length: 8. 520 o Port ID: An ID for the port on which the enclosing TRILL IIH 521 PDU is being sent as specified in [RFC6325], Section 4.4.2. 523 o Sender Nickname: If the sending IS is holding any nicknames as 524 discussed in [RFC6325], Section 3.7, one MUST be included here. 525 Otherwise, the field is set to zero. This field is to support 526 intelligent end stations that determine the egress IS (RBridge) 527 for unicast data through a directory service or the like and 528 that need a nickname for their first hop to insert as the 529 ingress nickname to correctly format a TRILL Data frame (see 530 [RFC6325], Section 4.6.2, point 8). It is also referenced in 531 connection with the VLANs Appointed Sub-TLV (see Section 532 2.2.5). 534 o Outer.VLAN: A copy of the 12-bit outer VLAN ID of the TRILL IIH 535 frame containing this sub-TLV, as specified in [RFC6325], 536 Section 4.4.5. 538 o Desig.VLAN: The 12-bit ID of the Designated VLAN for the link, 539 as specified in [RFC6325], Section 4.2.4.2. 541 o AF, AC, VM, BY, and TR: These flag bits have the following 542 meanings when set to one, as specified in the listed section of 543 [RFC6325]: 545 RFC 6325 546 Bit Section Meaning if bit is one 547 -------------------------------------- 549 AF 4.4.2 Originating IS believes it is appointed 550 forwarder for the VLAN and port on which the 551 containing IIH PDU was sent. 553 AC 4.9.1 Originating port configured as an access port 554 (TRILL traffic disabled). 556 VM 4.4.5 VLAN mapping detected on this link. 558 BY 4.4.2 Bypass pseudonode. 560 TR 4.9.1 Originating port configured as a trunk port 561 (end-station service disabled). 563 o R: Reserved bit. MUST be sent as zero and ignored on receipt. 565 2.2.2 Enabled-VLANs Sub-TLV 567 The optional Enabled-VLANs sub-TLV specifies the VLANs enabled at the 568 port of the originating IS on which the containing Hello was sent, as 569 specified in [RFC6325], Section 4.4.2. It has the following format: 571 +-+-+-+-+-+-+-+-+ 572 | Type | (1 byte) 573 +-+-+-+-+-+-+-+-+ 574 | Length | (1 byte) 575 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 576 | RESV | Start VLAN ID | (2 bytes) 577 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 578 | VLAN bit-map.... 579 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 581 o Type: sub-TLV type, set to MT-PORT-CAP Enabled-VLANs sub-TLV 2. 583 o Length: Variable, minimum 3. 585 o RESV: 4 reserved bits that MUST be sent as zero and ignored on 586 receipt. 588 o Start VLAN ID: The 12-bit VLAN ID that is represented by the high 589 order bit of the first byte of the VLAN bit-map. 591 o VLAN bit-map: The highest order bit indicates the VLAN equal to 592 the start VLAN ID, the next highest bit indicates the VLAN equal 593 to start VLAN ID + 1, continuing to the end of the VLAN bit-map 594 field. 596 If this sub-TLV occurs more than once in a Hello, the set of enabled 597 VLANs is the union of the sets of VLANs indicated by each of the 598 Enabled-VLAN sub-TLVs in the Hello. 600 2.2.3 Appointed Forwarders Sub-TLV 602 The DRB on a link uses the Appointed Forwarders sub-TLV to inform 603 other ISs on the link that they are the designated VLAN-x forwarder 604 for one or more ranges of VLAN IDs as specified in [RFC6439]. It has 605 the following format: 607 +-+-+-+-+-+-+-+-+ 608 | Type | (1 byte) 609 +-+-+-+-+-+-+-+-+ 610 | Length | (1 byte) 611 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 612 | Appointment Information (1) | (6 bytes) 613 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 614 | Appointment Information (2) | (6 bytes) 615 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 616 | ................. | 617 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 618 | Appointment Information (N) | (6 bytes) 619 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 621 where each appointment is of the form: 623 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 624 | Appointee Nickname | (2 bytes) 625 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 626 | RESV | Start.VLAN | (2 bytes) 627 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 628 | RESV | End.VLAN | (2 bytes) 629 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 631 o Type: sub-TLV type, set to MT-PORT-CAP AppointedFwrdrs sub-TLV 3. 633 o Length: 6*n bytes, where there are n appointments. 635 o Appointee Nickname: The nickname of the IS being appointed a 636 forwarder. 638 o RESV: 4 bits that MUST be sent as zero and ignored on receipt. 640 o Start.VLAN, End.VLAN: These fields are the VLAN IDs of the 641 appointment range, inclusive. To specify a single VLAN, the VLAN's 642 ID appears as both the start and end VLAN. As specified in 643 [RFC6439], appointing an IS forwarder on a port for a VLAN not 644 enabled on that port has no effect. If the range specified is or 645 includes the value 0x000 or 0xFFF, such values are ignored as they 646 are not valid VLAN numbers and a port cannot be enabled for them. 648 An IS's nickname may occur as appointed forwarder for multiple VLAN 649 ranges by occurrences of this sub-TLV within the same or different MT 650 Port Capability TLVs within an IIH PDU. See [RFC6439]. 652 2.2.4 Port TRILL Version Sub-TLV 654 The Port TRILL Version (PORT-TRILL-VER) sub-TLV indicates the maximum 655 version of the TRILL standard supported and the support of optional 656 hop-by-hop capabilities. By implication, lower versions are also 657 supported. If this sub-TLV is missing from an IIH, it is assumed that 658 the originating IS only supports the base version (version zero) of 659 the protocol [RFC6325] and supports no optional capabilities 660 indicated by this sub-TLV. 662 +-+-+-+-+-+-+-+-+ 663 | Type | (1 byte) 664 +-+-+-+-+-+-+-+-+ 665 | Length | (1 byte) 666 +-+-+-+-+-+-+-+-+ 667 | Max-version | (1 byte) 668 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+ 669 | Capabilities and Header Flags Supported | (4 bytes) 670 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+ 671 0 1 3 672 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 0 1 674 o Type: MT-PORT-CAP sub-TLV type, set to TBD [7 suggested] (PORT- 675 TRILL-VER). 677 o Length: 5. 679 o Max-version: A one byte unsigned integer set to maximum version 680 supported. 682 o Capabilities and Header Flags Supported: A bit vector of 32 bits 683 numbered 0 through 31 in network order. Bits 3 through 13 indicate 684 that the corresponding TRILL Header hop-by-hop extended flags 685 [ExtendHeader] are supported. Bits 0 through 2 and 14 to 31 are 686 reserved to indicate support of optional capabilities. A one bit 687 indicates that the flag or capability is supported by the sending 688 IS. Bits in this field MUST be set to zero except as permitted for 689 a capability being advertised or if a hop-by-hop extended header 690 flag is supported. 692 This sub-TLV, if present, MUST occur in an MT-PORT-CAP TLV in a TRILL 693 IIH. If there is more than one occurrence, the minimum of the 694 supported versions is assumed to be correct and a capability or 695 header flag is assumed to be supported only if indicated by all 696 occurrences. The flags and capabilities for which support can be 697 indicated in this sub-TLV are disjoint from those in the TRILL-VER 698 sub-TLV (Section 2.3.1) so they cannot conflict. The flags and 699 capabilities indicated in this sub-TLV relate to hop-by-hop 700 processing that can differ between the ports of an IS (RBridge), and 701 thus must be advertised in IIHs. For example, a capability requiring 702 cryptographic hardware assist might be supported on some ports and 703 not others. However, the TRILL version is the same as that in the 704 PORT-TRILL-VER sub-TLV. An IS, if it is adjacent to the sending IS of 705 TRILL version sub-TLV(s) uses the TRILL version it received in PORT- 706 TRILL-VER sub-TLV(s) in preference to that received in TRILL-VER sub- 707 TLV(s). 709 2.2.5 VLANs Appointed Sub-TLV 711 The optional VLANs sub-TLV specifies the VLANs for which the port of 712 the originating IS on which the containing Hello was sent is 713 appointed forwarder. It has the following format: 715 +-+-+-+-+-+-+-+-+ 716 | Type | (1 byte) 717 +-+-+-+-+-+-+-+-+ 718 | Length | (1 byte) 719 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 720 | RESV | Start VLAN ID | (2 bytes) 721 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 722 | VLAN bit-map.... 723 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 725 o Type: sub-TLV type, set to MT-PORT-CAP VLANS-Appointed sub-TLV TBD 726 [8 suggested]. 728 o Length: Variable, minimum 3. 730 o RESV: 4 reserved bits that MUST be sent as zero and ignored on 731 receipt. 733 o Start VLAN ID: The 12-bit VLAN ID that is represented by the high 734 order bit of the first byte of the VLAN bit-map. 736 o VLAN bit-map: The highest order bit indicates the VLAN equal to 737 the start VLAN ID, the next highest bit indicates the VLAN equal 738 to start VLAN ID + 1, continuing to the end of the VLAN bit-map 739 field. 741 If this sub-TLV occurs more than once in a Hello, the originating IS 742 is declaring it believes itself to be appointed forwarder on the port 743 on which the enclosing IIH was sent for the union of the sets of 744 VLANs indicated by each of the VLANs-Appointed sub-TLVs in the Hello. 746 2.3 Sub-TLVs of the Router and MT Capability TLVs 748 The Router Capability TLV is specified in [RFC4971] and the MT 749 Capability TLV in [RFC6329]. All of the sub-sections of this Section 750 2.3 below specify sub-TLVs that can be carried in the Router 751 Capability TLV (#242) and the MT (multi-topology) Capability TLV 752 (#144) with the same sub-TLV number for both TLVs. These TLVs are in 753 turn carried only by LSPs. 755 2.3.1 TRILL Version Sub-TLV 757 The TRILL Version (TRILL-VER) sub-TLV indicates the maximum version 758 of the TRILL standard supported and the support of optional 759 capabilities by the originating IS. By implication, lower versions 760 are also supported. If this sub-TLV is missing, it is assumed that 761 the originating IS only supports the base version (version zero) of 762 the protocol [RFC6325] and no optional capabilities indicated by this 763 sub-TLV are supported. 765 +-+-+-+-+-+-+-+-+ 766 | Type | (1 byte) 767 +-+-+-+-+-+-+-+-+ 768 | Length | (1 byte) 769 +-+-+-+-+-+-+-+-+ 770 | Max-version | (1 byte) 771 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+ 772 | Capabilities and Header Flags Supported | (4 bytes) 773 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+ 774 0 1 3 775 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 0 1 777 o Type: Router Capability sub-TLV type, set to 13 (TRILL-VER). 779 o Length: 5. 781 o Max-version: A one byte unsigned integer set to maximum version 782 supported. 784 o Capabilities and Header Flags Supported: A bit vector of 32 bits 785 numbered 0 through 31 in network order. Bits 14 through 31 786 indicate that the corresponding TRILL Header extended flags 787 [ExtendHeader] are supported. Bits 0 through 13 are reserved to 788 indicate support of optional capabilities. A one bit indicates 789 that the originating IS supports the flag or capability. For 790 example, support of multi-level TRILL IS-IS [MultiLevel]. Bits in 791 this field MUST be set to zero except as permitted for a 792 capability being advertised or an extended header flag supported. 794 This sub-TLV, if present, MUST occur in a Router Capabilities TLV in 795 the LSP number zero for the originating IS. If found in other 796 fragments, it is ignored. If there is more than one occurrence in LSP 797 number zero, the minimum of the supported versions is assumed to be 798 correct and an extended header flag or capability is assumed to be 799 supported only if indicated by all occurrences. The flags and 800 capabilities supported bits in this sub-TLV are disjoint from those 801 in the PORT-TRILL-VER sub-TLV (Section 2.2.4) so they cannot 802 conflict. However, the TRILL version is the same as that in the PORT- 803 TRILL-VER sub-TLV and an IS that is adjacent to the originating IS of 804 TRILL-VER sub-TLV(s) uses the TRILL version it received in PORT- 805 TRILL-VER sub-TLV(s) in preference to that received in TRILL-VER sub- 806 TLV(s). 808 For multi-topology aware TRILL switches, the TRILL version and 809 capabilities announced for the base topology are assumed to apply to 810 all topologies for which a separate TRILL version announcement does 811 not occur. Such announcements for non-zero topologies need not occur 812 in fragment zero. 814 2.3.2 Nickname Sub-TLV 816 The Nickname (NICKNAME) Router Capability sub-TLV carries information 817 about the nicknames of the originating IS, along with information 818 about its priority to hold those nicknames as specified in [RFC6325], 819 Section 3.7.3. Multiple instances of this sub-TLV may occur. 821 +-+-+-+-+-+-+-+-+ 822 |Type = NICKNAME| (1 byte) 823 +-+-+-+-+-+-+-+-+ 824 | Length | (1 byte) 825 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 826 | NICKNAME RECORDS (1) | 827 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 828 | NICKNAME RECORDS (2) | 829 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 830 | ................. | 831 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 832 | NICKNAME RECORDS (N) | 833 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 835 where each nickname record is of the form: 837 +-+-+-+-+-+-+-+-+ 838 | Nickname.Pri | (1 byte) 839 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 840 | Tree Root Priority | (2 byte) 841 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 842 | Nickname | (2 bytes) 843 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 845 o Type: Router and MT Capability sub-TLV type, set to 6 (NICKNAME). 847 o Length: 5*n, where n is the number of nickname records present. 849 o Nickname.Pri: An 8-bit unsigned integer priority to hold a 850 nickname as specified in Section 3.7.3 of [RFC6325]. 852 o Tree Root Priority: This is an unsigned 16-bit integer priority to 853 be a tree root as specified in Section 4.5 of [RFC6325]. 855 o Nickname: This is an unsigned 16-bit integer as specified in 856 Section 3.7 of [RFC6325]. 858 2.3.3 Trees Sub-TLV 860 Each IS providing TRILL service uses the TREES sub-TLV to announce 861 three numbers related to the computation of distribution trees as 862 specified in Section 4.5 of [RFC6325]. Its format is as follows: 864 +-+-+-+-+-+-+-+-+ 865 |Type = TREES | (1 byte) 866 +-+-+-+-+-+-+-+-+ 867 | Length | (1 byte) 868 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 869 | Number of trees to compute | (2 byte) 870 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 871 | Maximum trees able to compute | (2 byte) 872 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 873 | Number of trees to use | (2 byte) 874 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 876 o Type: Router and MT Capability sub-TLV type, set to 7 (TREES). 878 o Length: 6. 880 o Number of trees to compute: An unsigned 16-bit integer as 881 specified in Section 4.5 of [RFC6325]. 883 o Maximum trees able to compute: An unsigned 16-bit integer as 884 specified in Section 4.5 of [RFC6325]. 886 o Number of trees to use: An unsigned 16-bit integer as specified in 887 Section 4.5 of [RFC6325]. 889 2.3.4 Tree Identifiers Sub-TLV 891 The tree identifiers (TREE-RT-IDs) sub-TLV is an ordered list of 892 nicknames. When originated by the IS that has the highest priority to 893 be a tree root, it lists the distribution trees that the other ISs 894 are required to compute as specified in Section 4.5 of [RFC6325]. If 895 this information is spread across multiple sub-TLVs, the starting 896 tree number is used to allow the ordered lists to be correctly 897 concatenated. The sub-TLV format is as follows: 899 +-+-+-+-+-+-+-+-+ 900 |Type=TREE-RT-IDs| (1 byte) 901 +-+-+-+-+-+-+-+-+ 902 | Length | (1 byte) 903 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 904 |Starting Tree Number | (2 bytes) 905 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 906 | Nickname (K-th root) | (2 bytes) 907 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 908 | Nickname (K+1 - th root) | (2 bytes) 909 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 910 | Nickname (...) | 911 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 913 o Type: Router and MT Capability sub-TLV type, set to 8 (TREE-RT- 914 IDs). 916 o Length: 2 + 2*n, where n is the number of nicknames listed. 918 o Starting Tree Number: This identifies the starting tree number of 919 the nicknames that are trees for the domain. This is set to 1 for 920 the sub-TLV containing the first list. Other Tree-Identifiers sub- 921 TLVs will have the number of the starting list they contain. In 922 the event the same tree identifier can be computed from two such 923 sub-TLVs and they are different, then it is assumed that this is a 924 transient condition that will get cleared. During this transient 925 time, such a tree SHOULD NOT be computed unless such computation 926 is indicated by all relevant sub-TLVs present. 928 o Nickname: The nickname at which a distribution tree is rooted. 930 2.3.5 Trees Used Identifiers Sub-TLV 932 This Router Capability sub-TLV has the same structure as the Tree 933 Identifiers sub-TLV specified in Section 2.3.4. The only difference 934 is that its sub-TLV type is set to 9 (TREE-USE-IDs), and the trees 935 listed are those that the originating IS wishes to use as specified 936 in [RFC6325], Section 4.5. 938 2.3.6 Interested VLANs and Spanning Tree Roots Sub-TLV 940 The value of this sub-TLV consists of a VLAN range and information in 941 common to all of the VLANs in the range for the originating IS. This 942 information consists of flags, a variable length list of spanning 943 tree root bridge IDs, and an appointed forwarder status lost counter, 944 all as specified in the sections of [RFC6325] listed with the 945 respective information items below. 947 In the set of LSPs originated by an IS, the union of the VLAN ranges 948 in all occurrences of this sub-TLV MUST be the set of VLANs for which 949 the originating IS is appointed forwarder on at least one port, and 950 the VLAN ranges in multiple VLANs sub-TLVs for an IS MUST NOT overlap 951 unless the information provided about a VLAN is the same in every 952 instance. However, as a transient state these conditions may be 953 violated. If a VLAN is not listed in any INT-VLAN sub-TLV for an IS, 954 that IS is assumed to be uninterested in receiving traffic for that 955 VLAN. If a VLAN appears in more than one INT-VLAN sub-TLV for an IS 956 with different information in the different instances, the following 957 apply: 959 - If those sub-TLVs provide different nicknames, it is unspecified 960 which nickname takes precedence. 961 - The largest appointed forwarder status lost counter, using serial 962 number arithmetic [RFC1982], is used. 963 - The originating IS is assumed to be attached to a multicast IPv4 964 router for that VLAN if any of the INT-VLAN sub-TLVs assert that 965 it is so connected and similarly for IPv6 multicast router 966 attachment. 967 - The root bridge lists from all of the instances of the VLAN for 968 the originating IS are merged. 970 To minimize such occurrences, wherever possible, an implementation 971 SHOULD advertise the update to an interested VLAN and Spanning Tree 972 Roots sub-TLV in the same LSP fragment as the advertisement that it 973 replaces. Where this is not possible, the two affected LSP fragments 974 should be flooded as an atomic action. An IS that receives an update 975 to an existing interested VLAN and Spanning Tree Roots sub-TLV can 976 minimize the potential disruption associated with the update by 977 employing a hold-down timer prior to processing the update so as to 978 allow for the receipt of multiple LSP fragments associated with the 979 same update prior to beginning processing. 981 The sub-TLV layout is as follows: 983 +-+-+-+-+-+-+-+-+ 984 |Type = INT-VLAN| (1 byte) 985 +-+-+-+-+-+-+-+-+ 986 | Length | (1 byte) 987 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 988 | Nickname | (2 bytes) 989 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+ 990 | Interested VLANS | (4 bytes) 991 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+ 992 | Appointed Forwarder Status Lost Counter | (4 bytes) 993 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+ 994 | Root Bridges | (6*n bytes) 995 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+ 997 o Type: Router and MT Capability sub-TLV type, set to 10 (INT-VLAN). 999 o Length: 10 + 6*n, where n is the number of root bridge IDs. 1001 o Nickname: As specified in [RFC6325], Section 4.2.4.4, this field 1002 may be used to associate a nickname held by the originating IS 1003 with the VLAN range indicated. When not used in this way, it is 1004 set to zero. 1006 o Interested VLANS: The Interested VLANs field is formatted as shown 1007 below. 1009 0 1 2 3 4 - 15 16 - 19 20 - 31 1010 +----+----+----+----+------------+----------+------------+ 1011 | M4 | M6 | R | R | VLAN.start | RESV | VLAN.end | 1012 +----+----+----+----+------------+----------+------------+ 1014 - M4, M6: These bits indicate, respectively, that there is an 1015 IPv4 or IPv6 multicast router on a link for which the 1016 originating IS is appointed forwarder for every VLAN in the 1017 indicated range as specified in [RFC6325], Section 4.2.4.4, 1018 item 5.1. 1020 - R, RESV: These reserved bits MUST be sent as zero and are 1021 ignored on receipt. 1023 - VLAN.start and VLAN.end: This VLAN ID range is inclusive. 1024 Setting both VLAN.start and VLAN.end to the same value 1025 indicates a range of one VLAN ID. If VLAN.start is not equal to 1026 VLAN.end and VLAN.start is 0x000, the sub-TLV is interpreted as 1027 if VLAN.start was 0x001. If VLAN.start is not equal to VLAN.end 1028 and VLAN.end is 0xFFF, the sub-TVL is interpreted as if 1029 VLAN.end was 0xFFE. If VLAN.end is less than VLAN.start, the 1030 sub-TLV is ignored. If both VLAN.start and VLAN.end are 0x000 1031 or both are 0xFFF, the sub-TLV is ignored. 1033 o Appointed Forwarder Status Lost Counter: This is a count of how 1034 many times a port that was appointed forwarder for the VLANs in 1035 the range given has lost the status of being an appointed 1036 forwarder for some port as discussed in Section 4.8.3 of 1037 [RFC6325]. It is initialized to zero at an IS when the zeroth LSP 1038 sequence number is initialized. No special action need be taken at 1039 rollover; the counter just wraps around. 1041 o Root Bridges: The list of zero or more spanning tree root bridge 1042 IDs is the set of root bridge IDs seen for all ports for which the 1043 IS is appointed forwarder for the VLANs in the specified range as 1044 discussed in [RFC6325], Section 4.9.3.2. While, of course, at most 1045 one spanning tree root could be seen on any particular port, there 1046 may be multiple ports in the same VLANs connected to different 1047 bridged LANs with different spanning tree roots. 1049 An INT-VLAN sub-TLV asserts that the information provided (multicast 1050 router attachment, appointed forwarder status lost counter, and root 1051 bridges) is the same for all VLANs in the range specified. If this is 1052 not the case, the range MUST be split into subranges meeting this 1053 criteria. It is always safe to use sub-TLVs with a "range" of one 1054 VLAN ID, but this may be too verbose. 1056 2.3.7 VLAN Group Sub-TLV 1058 The VLAN Group sub-TLV consists of two or more VLAN IDs as specified 1059 in [RFC6325], Section 4.8.4. This sub-TLV indicates that shared VLAN 1060 learning is occurring at the originating IS between the listed VLANs. 1061 It is structured as follows: 1063 +-+-+-+-+-+-+-+-+ 1064 |Type=VLAN-GROUP| (1 byte) 1065 +-+-+-+-+-+-+-+-+ 1066 | Length | (1 byte) 1067 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1068 | RESV | Primary VLAN ID | (2 bytes) 1069 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1070 | RESV | Secondary VLAN ID | (2 bytes) 1071 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1072 | more Secondary VLAN IDs ... (2 bytes each) 1073 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1075 o Type: Router and MT Capability sub-TLV type, set to 14 (VLAN- 1076 GROUP). 1078 o Length: 4 + 2*n, where n is the number of secondary VLAN ID fields 1079 beyond the first. n MAY be zero. 1081 o RESV: a 4-bit field that MUST be sent as zero and ignored on 1082 receipt. 1084 o Primary VLAN ID: This identifies the primary VLAN ID. 1086 o Secondary VLAN ID: This identifies a secondary VLAN in the VLAN 1087 Group. 1089 o more Secondary VLAN IDs: zero or more byte pairs, each with the 1090 top 4 bits as a RESV field and the low 12 bits as a VLAN ID. 1092 2.3.8 Interested Labels and Spanning Tree Roots Sub-TLV 1094 An IS that can handle fine-grained labeling announces its fine- 1095 grained label connectivity and related information in the "Interested 1096 Labels and Bridge Spanning Tree Roots sub-TLV" (INT-LABEL) which is a 1097 variation of the "Interested VLANs and Spanning Tree Roots sub-TLV" 1098 (INT-VLAN) structured as below. 1100 +-+-+-+-+-+-+-+-+ 1101 |Type= INT-LABEL| (1 byte) 1102 +-+-+-+-+-+-+-+-+ 1103 | Length | (1 byte) 1104 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1105 | Nickname | (2 bytes) 1106 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+ 1107 | Interested Labels | (7 bytes) 1108 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+ 1109 | Appointed Forwarder Status Lost Counter | (4 bytes) 1110 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+ 1111 | Root Bridges | (6*n bytes) 1112 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+ 1114 o Type: Router and MT Capability sub-TLV Type, set to TBD [15 1115 suggested] (INT-LABEL). 1117 o Length: 11 + 6*n where n is the number of root bridge IDs. 1119 o Nickname: This field may be used to associate a nickname held by 1120 the originating IS with the Labels indicated. When not used in 1121 this way, it is set to zero. 1123 o Interested Labels: The Interested Labels field is seven bytes long 1124 and formatted as shown below. 1126 0 1 2 3 4 5 6 7 1127 +--+--+--+--+--+--+--+--+ 1128 |M4|M6|BM| R| R| R| R| R| . . 1129 +--+--+--+--+--+--+--+--+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1130 | Label.start - 24 bits | 1131 +--+--+--+--+--+--+--+--+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1132 | Label.end or Bit Map - 24 bits | 1133 +--+--+--+--+--+--+--+--+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1134 0 1 2 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 1137 - M4, M6: These bits indicate, respectively, that there is an 1138 IPv4 or IPv6 multicast router on a link to which the 1139 originating IS is appointed forwarder for the VLAN 1140 corresponding to every label in the indicated range. 1142 - BM: If the BM (Bit Map) bit is zero, the last three bytes of 1143 the Interested Labels is a Label.end label number. If the BM 1144 bit is one, those bytes are a bit map as described below. 1146 - R: These reserved bits MUST be sent as zero and are ignored on 1147 receipt. 1149 - Label.start and Label.end: If the BM bit is zero: This fine- 1150 grained label ID range is inclusive. These fields are treated 1151 as unsigned integers. Setting them both to that same label ID 1152 value indicates a range of one label ID. If Label.end is less 1153 than Label.start, the sub-TLV is ignored. 1155 - Label.start and Bit Map: If the BM bit is one: The fine-grained 1156 labels that the IS is interested in are indicated by a 24-bit 1157 bit map. The interested labels are the Label.start number plus 1158 the bit number of each one bit in the bit map. So, if bit zero 1159 of the bit map is a one, the IS in interested in the label with 1160 value Label.start and if bit 23 of the bit map is a one, the IS 1161 is interested in the label with value Label.start+23. 1163 o Appointed Forwarder Status Lost Counter: This is a count of how 1164 many times a port that was appointed forwarder for a VLAN mapping 1165 to the fine-grained label in the range or bit map given has lost 1166 the status of being an appointed forwarder as discussed in Section 1167 4.8.3 of [RFC6325]. It is initialized to zero at an IS when the 1168 zeroth LSP sequence number is initialized. No special action need 1169 be taken at rollover; the counter just wraps around. 1171 o Root Bridges: The list of zero or more spanning tree root bridge 1172 IDs is the set of root bridge IDs seen for all ports for which the 1173 IS is appointed forwarder for a VLAN mapping to the fine-grained 1174 label in the specified range or bit map. (See [RFC6325], Section 1175 4.9.3.2.) While, of course, at most one spanning tree root could 1176 be seen on any particular port, there may be multiple relevant 1177 ports connected to different bridged LANs with different spanning 1178 tree roots. 1180 An INT-LABEL sub-TLV asserts that the information provided (multicast 1181 router attachment, appointed forwarder status lost counter, and root 1182 bridges) is the same for all labels specified. If this is not the 1183 case, the sub-TLV MUST be split into subranges and/or separate bit 1184 maps meeting this criteria. It is always safe to use sub-TLVs with a 1185 "range" of one VLAN ID, but this may be too verbose. 1187 2.3.9 RBridge Channel Protocols Sub-TLV 1189 An IS announces the RBridge Channel protocols [Channel] it supports 1190 through use of this sub-TLV. 1192 +-+-+-+-+-+-+-+-+ 1193 |Type=RBCHANNELS| (1 byte) 1194 +-+-+-+-+-+-+-+-+ 1195 | Length | (1 byte) 1196 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+... 1197 | Zero or more bit vectors (variable) 1198 +-+-+-+-... 1200 o Type: Router and MT Capabilities RBridge Channel Protocols sub- 1201 TLV, set to TBD [16 suggested] (RBCHANNELS). 1203 o Length: variable. 1205 o Bit Vectors: Zero or more byte-aligned bit vectors where a one bit 1206 indicates support of a particular RBridge Channel protocol. Each 1207 byte-aligned bit vector is formatted as follows: 1209 | 0 1 2 3 4 5 6 7| 8 9 10 11 12 13 14 15| 1210 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ 1211 | Bit Vector Length | Bit Vector Offset | 1212 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ 1213 | bits 1214 +--+--+--... 1216 The bit vector length (BVL) is a seven bit unsigned integer field 1217 giving the number of bytes of bit vector. The bit vector offset (BVO) 1218 is a nine bit unsigned integer field. 1220 The bits in each bit vector are numbered in network order, the high 1221 order bit of the first byte of bits being bit 0 + 8*BVO, the low 1222 order bit of that byte being 7 + 8*BVO, the high order bit of the 1223 second byte being 8 + 8*BVO, and so on for BVL bytes. An RBridge 1224 Channel protocols-supported bit vector MUST NOT extend beyond the end 1225 of the value in the sub-TLV in which it occurs. If it does, it is 1226 ignored. If multiple byte-aligned bit vectors are present in one such 1227 sub-TLV, their representations are contiguous, the BVL field for the 1228 next starting immediately after the last byte of bits for the 1229 previous bit vector. The one or more bit vectors present MUST exactly 1230 fill the sub-TLV value. If there are one or two bytes of value left 1231 over, they are ignored; if more than two, an attempt is made to parse 1232 them as one or more bit vectors. 1234 If different bit vectors overlap in the protocol number space they 1235 refer to and they have inconsistent bit values for a channel 1236 protocol, support for the protocol is assumed if any of these bit 1237 vectors has a 1 for that protocol. 1239 The absence of any occurrences of this sub-TLV in the LSP for an IS 1240 implies that that IS does not support the RBridge Channel facility. 1242 To avoid wasted space, trailing bit vector zero bytes SHOULD be 1243 eliminated by reducing BVL, any null bit vectors (ones with BVL equal 1244 to zero) eliminated, and generally the most compact encoding used. 1245 For example, support for channel protocols 1 and 32 could be encoded 1246 as 1248 BVL = 5 1249 BVO = 0 1250 0b01000000 1251 0b00000000 1252 0b00000000 1253 0b00000000 1254 0b10000000 1256 or as 1258 BVL = 1 1259 BVO = 0 1260 0b01000000 1261 BLV = 1 1262 BVO = 4 1263 0b1000000 1265 The first takes 7 bytes while the second takes only 6 and thus the 1266 second would be preferred. 1268 In multi-topology aware RBridges, RBridge channel protocols for which 1269 support is announced in the base topology are assumed to be supported 1270 in all topologies for which there is no separate RBridge channel 1271 protocol support announcement. 1273 2.3.10 Affinity Sub-TLV 1275 Association of an IS to a multi-destination distribution tree through 1276 a specific path is accomplished by using the tree Affinity sub-TLV. 1277 The announcement of an Affinity sub-TLV by RB1 with the nickname of 1278 RB2 as the first part of an Affinity Record in the sub-TLV value is a 1279 request by RB1 that all ISes in the campus connect RB2 as a child of 1280 RB1 when calculating any of the trees listed in that Affinity Record. 1281 Examples of use include [Affinity] and [Resilient]. 1283 The structure of the AFFINITY sub-TLV is shown below. 1285 +-+-+-+-+-+-+-+-+ 1286 | Type=AFFINITY | (1 byte) 1287 +-+-+-+-+-+-+-+-+ 1288 | Length | (1 byte) 1289 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1290 | AFFINITY RECORD 1 | 1291 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1292 | AFFINITY RECORD 2 | 1293 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1294 | .......... 1295 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1296 | AFFINITY RECORD N | 1297 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1299 Where each AFFINITY RECORD is structured as follows: 1301 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1302 | Nickname | (2 bytes) 1303 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1304 |Affinity Flags | (1 byte 1305 +-+-+-+-+-+-+-+-+ 1306 |Number of trees| (1 byte) 1307 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1308 | Tree-num of 1st root | (2 bytes) 1309 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1310 | Tree-num of 2nd root | (2 bytes) 1311 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1312 | .......... | 1313 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1314 | Tree-num of Nth root | (2 bytes) 1315 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1317 o Type: Router and MT Capability sub-TLV type, set to TBD [17 1318 suggested] (AFFINITY). 1320 o Length: 1 + size of all Affinity Records included, where an 1321 Affinity Record listing n tree roots is 3+2*n bytes long. 1323 o Nickname: 16-bit nickname of the IS whose associations to the 1324 multi-destination trees listed in the Affinity Record are through 1325 the originating IS. 1327 o Affinity Flags: 8 bits reserved for future needs to provide 1328 additional information about the affinity being announced. MUST be 1329 sent as zero and ignored on receipt. 1331 o Number of trees: A one byte unsigned integer giving the number of 1332 trees for which affinity is being announced by this Affinity 1333 Record. 1335 o Tree-num of roots: The tree numbers of the distribution trees this 1336 Affinity Record is announcing. 1338 There is no need for a field giving the number of Affinity Records as 1339 this can be determined by processing those records. 1341 2.3.11 Label Group Sub-TLV 1343 The Label Group sub-TLV consists of two or more Label IDs. This sub- 1344 TLV indicates that shared Label MAC address learning is occurring at 1345 the announcing IS between the listed Labels. It is structured as 1346 follows: 1348 +-+-+-+-+-+-+-+-+ 1349 |Typ=LABEL-GROUP| (1 byte) 1350 +-+-+-+-+-+-+-+-+ 1351 | Length | (1 byte) 1352 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1353 | Primary Label ID | (3 bytes) 1354 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1355 | Secondary Label ID | (3 bytes) 1356 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1357 | more Secondary Label IDs ... (3 bytes each) 1358 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1360 o Type: Router and MT Capability sub-TLV type, set to TBD [18 1361 suggested] (LABEL-GROUP). 1363 o Length: 6 + 3*n, where n is the number of secondary VLAN ID fields 1364 beyond the first. n MAY be zero. 1366 o Primary Label ID: This identifies the primary Label ID. 1368 o Secondary Label ID: This identifies a secondary Label in the Label 1369 Group. 1371 o more Secondary Label IDs: zero or more byte triples, each with a 1372 Label ID. 1374 2.4 MTU Sub-TLV for Ext. Reachability and MT ISN TLVs 1376 The MTU sub-TLV is used to optionally announce the MTU of a link as 1377 specified in [RFC6325], Section 4.2.4.4. It occurs within the 1378 Extended Reachability (#22) and MT (multi-topology) ISN (Intermediate 1379 System Neighbors) (#222) TLVs. 1381 +-+-+-+-+-+-+-+-+ 1382 | Type = MTU | (1 byte) 1383 +-+-+-+-+-+-+-+-+ 1384 | Length | (1 byte) 1385 +-+-+-+-+-+-+-+-+ 1386 |F| RESV | (1 byte) 1387 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1388 | MTU | (2 bytes) 1389 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1391 o Type: Extended Reachability and MT IS sub-TLV type, set to MTU 1392 sub-TLV 28. 1394 o Length: 3. 1396 o F: Failed. This bit is a one if MTU testing failed on this link at 1397 the required campus-wide MTU. 1399 o RESV: 7 bits that MUST be sent as zero and ignored on receipt. 1401 o MTU: This field is set to the largest successfully tested MTU size 1402 for this link, or zero if it has not been tested, as specified in 1403 Section 4.3.2 of [RFC6325]. 1405 2.5 TRILL Neighbor TLV 1407 The TRILL Neighbor TLV is used in TRILL IIH PDUs (see Section 4.1 1408 below) in place of the IS Neighbor TLV, as specified in Section 1409 4.4.2.1 of [RFC6325] and in [RFC6327]. The structure of the TRILL 1410 Neighbor TLV is as follows: 1412 +-+-+-+-+-+-+-+-+ 1413 | Type | (1 byte) 1414 +-+-+-+-+-+-+-+-+ 1415 | Length | (1 byte) 1416 +-+-+-+-+-+-+-+-+ 1417 |S|L|R| SIZE | (1 byte) 1418 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1419 | Neighbor RECORDS (1) | 1420 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1421 | Neighbor RECORDS (2) | 1422 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1423 | ................. | 1424 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1425 | Neighbor RECORDS (N) | 1426 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1428 The information present for each neighbor is as follows: 1430 +-+-+-+-+-+-+-+-+ 1431 |F|O| RESV | (1 bytes) 1432 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1433 | MTU | (2 bytes) 1434 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+ 1435 | SNPA (MAC Address) | (SIZE bytes) 1436 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+ 1438 o Type: TLV Type, set to TRILL Neighbor TLV 145. 1440 o Length: 1 + (SIZE+3)*n, where n is the number of neighbor records, 1441 which may be zero. 1443 o S: Smallest flag. If this bit is a one, then the list of neighbors 1444 includes the neighbor with the smallest MAC address considered as 1445 an unsigned integer. 1447 o L: Largest flag. If this bit is a one, then the list of neighbors 1448 includes the neighbor with the largest MAC address considered as 1449 an unsigned integer. 1451 o R, RESV: These bits are reserved and MUST be sent as zero and 1452 ignored on receipt. 1454 o SIZE: The SNPA size as an unsigned integer in bytes except that 6 1455 is encoded as zero. An actual size of zero is meaningless and 1456 cannot be encoded. The meaning of the value 6 in this field is 1457 reserved and TRILL Neighbor TLVs received with a SIZE of 6 are 1458 ignored. The SIZE is inherent to the technology of a link and is 1459 fixed for all TRILL Neighbor TLVs on that link but may vary 1460 between different links in the campus if those links are different 1461 technologies. For example, 6 for EUI-48 SNPAs or 8 for EUI-64 1462 SNPAs [RFC5342]. (The SNPA size on the various links in a TRILL 1463 campus is independent of the System ID size.) 1465 o F: failed. This bit is a one if MTU testing to this neighbor 1466 failed at the required campus-wide MTU (see [RFC6325], Section 1467 4.3.1). 1469 o O: OOMF. This bit is a one if the IS sending the enclosing TRILL 1470 Neighbor TLV is willing to offer the Overload Originated Multi- 1471 destination Frame (OOMF) service [ClearCorrect] to the IS whose 1472 port has the SNPA in the enclosing Neighbor RECORD. 1474 o MTU: This field is set to the largest successfully tested MTU size 1475 for this neighbor or to zero if it has not been tested. 1477 o SNPA: Sub-Network Point of Attachment (MAC address) of the 1478 neighbor. 1480 As specified in [RFC6327] and Section 4.4.2.1 of [RFC6325], all MAC 1481 addresses may fit into one TLV, in which case both the S and L flags 1482 would be set to one in that TLV. If the MAC addresses don't fit into 1483 one TLV, the highest MAC address in a TRILL Neighbor TLV with the L 1484 flag zero MUST also appear as a MAC address in some other TRILL 1485 Neighbor TLV (possibly in a different TRILL IIH PDU). Also, the 1486 lowest MAC address in a TRILL Neighbor TLV with the S flag zero MUST 1487 also appear in some other TRILL Neighbor TLV (possibly in a different 1488 TRILL IIH PDU). If an IS believes it has no neighbors, it MUST send a 1489 TRILL Neighbor TLV with an empty list of neighbor RECORDS, which will 1490 have both the S and L bits on. 1492 3. MTU PDUs 1494 The IS-IS MTU-probe and MTU-ack PDUs are used to optionally determine 1495 the MTU on a link between ISs as specified in Section 4.3.2 of 1496 [RFC6325] and in [RFC6327]. 1498 The MTU PDUs have the IS-IS PDU common header (up through the Maximum 1499 Area Addresses byte) with PDU Type numbers as indicated in Section 5. 1500 They also have a common fixed MTU PDU header as shown below that is 8 1501 + 2*(ID Length) bytes long, 20 bytes in the case of the usual 6-bytes 1502 System IDs. 1504 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1505 | PDU Length | (2 bytes) 1506 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.....+-+-+ 1507 | Probe ID (6 bytes) | 1508 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.....+-+-+ 1509 | Probe Source ID (ID Length bytes) | 1510 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.....+-+-+ 1511 | Ack Source ID (ID Length bytes) | 1512 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.....+-+-+ 1514 As with other IS-IS PDUs, the PDU length gives the length of the 1515 entire IS-IS packet starting with and including the IS-IS common 1516 header. 1518 The Probe ID field is an opaque 48-bit quantity set by the IS issuing 1519 an MTU-probe and copied by the responding IS into the corresponding 1520 MTU-ack. For example, an IS creating an MTU-probe could compose this 1521 quantity from a port identifier and probe sequence number relative to 1522 that port. 1524 The Probe Source ID is set by an IS issuing an MTU-probe to its 1525 System ID and copied by the responding IS into the corresponding MTU- 1526 ack. The Ack Source ID is set to zero in MTU-probe PDUs and ignored 1527 on receipt. An IS issuing an MTU-ack sets the Ack Source ID field to 1528 its System ID. The System ID length is usually 6 bytes but could be a 1529 different value as indicated by the ID Length field in the IS-IS PDU 1530 Header. 1532 The TLV area follows the MTU PDU header area. This area MAY contain 1533 an Authentication TLV and MUST be padded to the exact size being 1534 tested with the Padding TLV. Since the minimum size of the Padding 1535 TLV is 2 bytes, it would be impossible to pad to exact size if the 1536 total length of the required information bearing fixed fields and 1537 TLVs added up to 1 byte less than the desired length. However, the 1538 length of the fixed fields and substantive TLVs for MTU PDUs is 1539 expected to be quite small compared with their minimum length 1540 (minimum 1470-byte MTU on an IEEE 802.3 link, for example), so this 1541 should not be a problem. 1543 4. Use of Existing PDUs and TLVs 1545 The sub-sections below provide details of TRILL use of existing PDUs 1546 and TLVs. 1548 4.1 TRILL IIH PDUs 1550 The TRILL IIH PDU is the variation of the LAN IIH PDU used by the 1551 TRILL protocol. Section 4.4 of the TRILL standard [RFC6325] and 1552 [RFC6327] specify the contents of the TRILL IIH and how its use in 1553 TRILL differs from Layer 3 LAN IIH PDU use. The adjacency state 1554 machinery for TRILL neighbors is specified in detail in [RFC6327]. 1556 In a TRILL IIH PDU, the IS-IS common header and the fixed PDU Header 1557 are the same as a Level 1 LAN IIH PDU. The Maximum Area Addresses 1558 octet in the common header MUST be set to 0x01. 1560 The IS-IS Neighbor TLV (6) is not used in a TRILL IIH and is ignored 1561 if it appears there. Instead, TRILL IIH PDUs use the TRILL Neighbor 1562 TLV (see Section 2.5). 1564 4.2 Area Address 1566 TRILL uses a fixed zero Area Address as specified in [RFC6325], 1567 Section 4.2.3. This is encoded in a 4-byte Area Address TLV (TLV #1) 1568 as follows: 1570 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1571 | 0x01, Area Address Type | (1 byte) 1572 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1573 | 0x02, Length of Value | (1 byte) 1574 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1575 | 0x01, Length of Address | (1 byte) 1576 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1577 | 0x00, zero Area Address | (1 byte) 1578 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1580 4.3 Protocols Supported 1582 NLPID (Network Layer Protocol ID) 0xC0 has been assigned to TRILL 1583 [RFC6328]. A Protocols Supported TLV (#129, [RFC1195]) including that 1584 value MUST appear in TRILL IIH PDUs and LSP number zero PDUs. 1586 4.4 Link State PDUs (LSPs) 1588 A number zero LSP MUST NOT be originated larger than 1470 bytes but a 1589 larger number zero LSP successfully received MUST be processed and 1590 forwarded normally. 1592 4.5 Originating LSP Buffer Size 1594 The originatingLSPBufferSize TLV (#14) MUST be in LSP number zero; 1595 however, if found in other LSP fragments, it is processed normally. 1596 Should there be more than one originatingLSPBufferSize TLV for an IS, 1597 the minimum size, but not less than 1470, is used. 1599 5. IANA Considerations 1601 This section give IANA Considerations for the TLVs, sub-TLVs, and 1602 PDUs specified herein. 1604 5.1 TLVs 1606 This document specifies two IS-IS TLV types -- namely, the Group 1607 Address TLV (GADDR-TLV, type 142) and the TRILL Neighbor TLV (type 1608 145). The PDUs in which these TLVs are permitted for TRILL are shown 1609 in the table below along with the section of this document where they 1610 are discussed. The final "NUMBER" column indicates the permitted 1611 number of occurrences of the TLV in their PDU, or set of PDUs in the 1612 case of LSP, which in these two cases is "*" indicating that the TLV 1613 MAY occur 0, 1, or more times. 1615 IANA has registered these two code points in the IANA IS-IS TLV 1616 registry (ignoring the "Section" and "NUMBER" columns, which are 1617 irrelevant to that registry). 1619 Section TLV IIH LSP SNP Purge NUMBER 1620 ======= === === === === ===== ====== 1621 GADDR-TLV 2.1 142 - X - - * 1622 TRILL Neighbor TLV 2.5 145 X - - - * 1624 5.2 sub-TLVs 1626 This document specifies a number of sub-TLVs. The TLVs in which these 1627 sub-TLVs occur are shown in the second table below along with the 1628 section of this document where they are discussed. The TLVs within 1629 which these sub-TLVs can occur are determined by the presence of an 1630 "X" in the relevant column and the column header as shown in the 1631 first table below. In some cases, the column header corresponds to 1632 two different TLVs in which the sub-TLV can occur. 1634 Column Head TLV RFCref TLV Name 1635 =========== ===== ======== ============== 1636 Grp. Adr. 142 This doc Group Address 1638 MT Port 143 6165 MT-PORT-CAP 1640 MT Cap. 242 4971 Router CAPABILITY 1641 144 6329 MT-Capability 1643 Ext. Reach 22 5305 Extended IS Reachability 1644 222 5120 MT ISN 1646 The final "NUMBER" column below indicates the permitted number of 1647 occurrences of the sub-TLV cumulatively within all occurrences of 1648 their TLV(s) in those TLVs' carrying PDU (or set of PDUs in the case 1649 of LSP), as follows: 1651 0-1 = MAY occur zero or one times. 1652 1 = MUST occur exactly once. If absent, the PDU is ignored. If it 1653 occurs more than once, results are unspecified. 1654 * = MAY occur 0, 1, or more times. 1656 The values in the "Section" and "NUMBER" columns are irrelevant to 1657 the IANA sub-registries. The numbers in square brackets are suggested 1658 values. 1660 sub- Grp. MT MT Ext. 1661 Name Section TLV# Adr. Port Cap. Reach NUMBER 1662 ================================================================ 1663 GMAC-ADDR 2.1.1 1 X - - - * 1664 GIP-ADDR 2.1.2 TBD[2] X - - - * 1665 GIPV6-ADDR 2.1.3 TBD[3] X - - - * 1666 GLMAC-ADDR 2.1.4 TBD[4] X - - - * 1667 GLIP-ADDR 2.1.5 TBD[5] X - - - * 1668 GLIPV6-ADDR 2.1.6 TBD[6] X - - - * 1669 VLAN-FLAGS 2.2.1 1 - X - - 1 1670 Enabled-VLANs 2.2.2 2 - X - - * 1671 AppointedFwrdrs 2.2.3 3 - X - - * 1672 PORT-TRILL-VER 2.2.4 TBD[7] - X - - 0-1 1673 VLANs-Appointed 2.2.5 TBD[8] - X - - * 1674 NICKNAME 2.3.2 6 - - X - * 1675 TREES 2.3.3 7 - - X - 0-1 1676 TREE-RT-IDs 2.3.4 8 - - X - * 1677 TREE-USE-IDs 2.3.5 9 - - X - * 1678 INT-VLAN 2.3.6 10 - - X - * 1679 TRILL-VER 2.3.1 13 - - X - 0-1 1680 VLAN-GROUP 2.3.7 14 - - X - * 1681 INT-LABEL 2.3.8 TBD[15] - - X - * 1682 RBCHANNELS 2.3.9 TBD[16] - - X - * 1683 AFFINITY 2.3.10 TBD[17] - - X - * 1684 LABEL-GROUP 2.3.11 TBD[18] - - X - * 1685 MTU 2.4 28 - - - X 0-1 1686 ================================================================ 1687 Name Section sub- Grp. MT MT Ext. NUMBER 1688 TLV# Adr. Port Cap. Reach 1690 5.3 PDUs 1692 The IS-IS PDUs registry remains as established in [RFC6326] except 1693 that the references to [RFC6326] are updated to reference this 1694 document. 1696 5.4 Reserved and Capability Bits 1698 Any reserved bits (R) or bits in reserved fields (RESV) or the 1699 capabilities bits in the PORT-TRILL-VER and TRILL-VER sub-TLVs, which 1700 are specified herein as "MUST be sent as zero and ignored on receipt" 1701 or the like, are allocated based on IETF Review [RFC5226]. 1703 Two sub-registries are created within the TRILL Parameters Registry 1704 as follows: 1706 Sub-Registry Name: TRILL-VER Sub-TLV Capability Flags 1707 Registration Procedures: IETF Review 1708 Reference: (This document) 1710 Bit Description Reference 1711 ===== ============= =========== 1712 0 Affinity sub-TLV support. [Affinity] 1713 1-13 Available 1714 14-31 Extended header flag support. [ExtendHeader] 1716 Sub-Registry Name: PORT-TRILL-VER Sub-TLV Capability Flags 1717 Registration Procedures: IETF Review 1718 Reference: (This document) 1720 Bit Description Reference 1721 ===== ============= =========== 1722 0 Hello reduction support. [ClearCorrect] 1723 1-2 Available 1724 3-13 Hop-by-hop extended flag support. [ExtendHeader] 1725 14-31 Available 1727 5.5 TRILL Neighbor Record Flags 1729 A sub-registry is created within the TRILL Parameters Registry as 1730 follows: 1732 Sub-Registry Name: TRILL Neighbor TLV NEIGHBOR RECORD Flags 1733 Registration Procedures: Standards Action 1734 Reference: (This document) 1736 Bit Short Name Description Reference 1737 ============== ============= =========== 1738 0 Fail Failed MTU test. [RFC6325] 1739 1 OOMF Offering OOMF service. [ClearCorrect] 1740 2-7 - Available. 1742 6. Security Considerations 1744 For general TRILL protocol security considerations, see the TRILL 1745 base protocol standard [RFC6325]. 1747 This document raises no new security issues for IS-IS. IS-IS security 1748 may be used to secure the IS-IS messages discussed here. See 1749 [RFC5304] and [RFC5310]. Even when IS-IS authentication is used, 1750 replays of Hello packets can create denial-of-service conditions; see 1751 [RFC6039] for details. These issues are similar in scope to those 1752 discussed in Section 6.2 of [RFC6325], and the same mitigations may 1753 apply. 1755 7. Change from RFC 6326 1757 Non-editorial changes from [RFC6326] are summarized in the list 1758 below: 1760 1. Additional of five sub-TLVs under the Group Address (GADDR) TLV 1761 covering VLAN labeled IPv4 and IPv6 addresses and fine-grained 1762 labeled MAC, IPv4, and IPv6 addresses. (Sections 2.1.2, 2.1.3, 1763 2.1.4, 2.1.5, and 2.1.6). 1765 2. Addition of the PORT-TRILL-VER sub-TLV. (Section 2.2.4) 1767 3. Addition of the VLANs-Appointed sub-TLV. (Section 2.2.5) 1769 4. Change the TRILL-VER sub-TLV as listed below. 1771 4.a Addition of 4 bytes of TRILL Header extended flags and 1772 capabilities supported information. 1774 4.b Require that the TRILL-VER sub-TLV appear in LSP number zero. 1776 The above changes to TRILL-VER are backwards compatible because 1777 the [RFC6326] conformant implementations of TRILL thus far have 1778 only supported version zero and not supported any optional 1779 capabilities or extended flags, the level of support indicated by 1780 the absence of the TRILL-VER sub-TLV. Thus, if an [RFC6326] 1781 conformant implementation of TRILL rejects this sub-TLV due to 1782 the changes specified in this document, it will, at worst, decide 1783 that support of version zero and no extended flags or 1784 capabilities is indicated, which is the best an [RFC6326] 1785 conformant implementation of TRILL can do anyway. Similarly, a 1786 TRILL implementation that supports TRILL-VER as specified herein 1787 and rejects TRILL-VER sub-TLVs in an [RFC6326] conformant TRILL 1788 implementation because they are not in LSP number zero will 1789 decide that that implementation supports only version zero with 1790 no extended flag or capabilities support, which will be correct. 1791 (Section 2.3.1) 1793 5. Clarification of the use of invalid VLAN IDs in the Appointed 1794 Forwarders sub-TLV and the Interested VLANs and Spanning Tree 1795 Roots sub-TLV. (Sections 2.2.3 and 2.3.6) 1797 6. Addition of the Interested Labels and Spanning Tree Roots sub-TLV 1798 to indicate attachment of an IS to a fine-grained label analogous 1799 to the existing Interested VLANs and Spanning Tree Roots sub-TLV 1800 for VLANs. (Section 2.3.8) 1802 7. Addition of the RBridge Channel Protocols sub-TLV so ISs can 1803 announce the RBridge Channel protocols they support. (Section 1804 2.3.9) 1806 8. Permit specification of the length of the link SNPA field in 1807 TRILL Neighbor TLVs. This change is backwards compatible because 1808 the size of 6 bytes is specially encoded as zero, the previous 1809 value of the bits in the new SIZE field. (Section 2.5) 1811 9. Make the size of the MTU PDU Header Probe Source ID and Ack 1812 Source ID fields be the ID Length from the IS-IS PDU Header 1813 rather than the fixed value 6. (Section 3) 1815 10. For robustness, require LSP number zero PDUs be originated as no 1816 larger than 1470 bytes but processed regardless of size. (Section 1817 4.4) 1819 11. Require that the originatingLSPBufferSize TLV, if present, appear 1820 in LSP number zero. (Section 4.5) 1822 12. Create sub-registries for and specify the IANA Considerations 1823 policy for reserved and capability bits in the TRILL version sub- 1824 TLVs. (Section 5.4) 1826 13. Addition of the distribution tree Affinity sub-TLV so ISs can 1827 request distribution tree attachments. (Section 2.3.10) 1829 14. Add LABEL-GROUP sub-TLV analogous to the VLAN-GROUP sub-TLV. 1830 (Section 2.3.11) 1832 15. Add multi-topology: permit sub-TLVs previously only in Router 1833 Capabilities TLV to also appear in MT Capabilities TLV; permit 1834 MTU sub-TLV previously limited to Extended Reachability TLV to 1835 also appear in MT ISN TLV. 1837 16. Addition of a sub-registry for Neighbor TLV Neighbor RECORD flag 1838 bits. (Section 5.5) 1840 17. Explicitly state that if the number of sources in a GADDR-TLV 1841 sub-TLV is zero, it indicates a listener for (*,G), that is, a 1842 listener not restricted by source. (Section 2.1) 1844 8. Normative References 1846 [ISO-10589] - ISO/IEC 10589:2002, Second Edition, "Intermediate 1847 System to Intermediate System Intra-Domain Routing Exchange 1848 Protocol for use in Conjunction with the Protocol for Providing 1849 the Connectionless-mode Network Service (ISO 8473)", 2002. 1851 [RFC1195] - Callon, R., "Use of OSI IS-IS for Routing in TCP/IP and 1852 Dual Environments", 1990. 1854 [RFC1982] - Elz, R. and R. Bush, "Serial Number Arithmetic", RFC 1855 1982, August 1996. 1857 [RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate 1858 Requirement Levels", BCP 14, RFC 2119, March 1997. 1860 [RFC4971] - Vasseur, JP. and N. Shen, "Intermediate System to 1861 Intermediate System (IS-IS) Extensions for Advertising Router 1862 Information", 2007. 1864 [RFC5120] - Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi 1865 Topology (MT) Routing in Intermediate System to Intermediate 1866 Systems (IS-ISs)", RFC 5120, February 2008. 1868 [RFC5226] - Narten, T. and H. Alvestrand, "Guidelines for Writing an 1869 IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 1870 2008. 1872 [RFC5305] - Li, T. and H. Smit, "IS-IS Extensions for Traffic 1873 Engineering", 2008. 1875 [RFC6165] - Banerjee, A. and D. Ward, "Extensions to IS-IS for 1876 Layer-2 Systems", RFC 6165, April 2011. 1878 [RFC6325] - Perlman, R., Eastlake, D., Dutt, D., Gai, S., and A. 1879 Ghanwani, "RBridges: Base Protocol Specification", RFC 6325, 1880 June 2011. 1882 [RFC6327] - Eastlake, D., Perlman, R., Ghanwani, A., Dutt, D., and V. 1883 Manral, "RBridges: Adjacency", RFC 6327, July 2011. 1885 [RFC6328] - Eastlake, D., "IANA Considerations for Network Layer 1886 Protocol Identifiers", RFC 6328, June 2011. 1888 [RFC6329] - Fedyk, D., Ed., Ashwood-Smith, P., Ed., Allan, D., Bragg, 1889 A., and P. Unbehagen, "IS-IS Extensions Supporting IEEE 802.1aq 1890 Shortest Path Bridging", RFC 6329, April 2012. 1892 [RFC6439] - Perlman, R., Eastlake, D., Li, Y., Banerjee, A., and F. 1893 Hu, "Routing Bridges (RBridges): Appointed Forwarders", RFC 1894 6439, November 2011. 1896 [Channel] - draft-ietf-trill-rbridge-channel, work in progress. 1898 [ClearCorrect] - D. Eastlake, M. Zhang, A. Ghanwani, V. Manral, A. 1899 Banerjee, draft-ietf-trill-clear-correct, in RFC Editor's 1900 queue. 1902 [ExtendHeader] - D. Eastlake, A. Ghanwani, V. Manral, Y. Li, C. 1903 Bestler, draft-ietf-trill-rbridge-extension, in RFC Editor's 1904 queue. 1906 9. Informative References 1908 [802.1D-2004] - "IEEE Standard for Local and metropolitan area 1909 networks / Media Access Control (MAC) Bridges", 802.1D-2004, 9 1910 June 2004. 1912 [802.1Q-2011] - "IEEE Standard for Local and metropolitan area 1913 networks / Virtual Bridged Local Area Networks", 802.1Q-2011, 1914 31 August 2011. 1916 [Err2869] - RFC Errata, Errata ID 2869, RFC 6326, http://www.rfc- 1917 editor.org. 1919 [RFC5304] - Li, T. and R. Atkinson, "IS-IS Cryptographic 1920 Authentication", RFC 5304, October 2008. 1922 [RFC5310] - Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., 1923 and M. Fanto, "IS-IS Generic Cryptographic Authentication", RFC 1924 5310, February 2009. 1926 [RFC5342] - Eastlake 3rd, D., "IANA Considerations and IETF Protocol 1927 Usage for IEEE 802 Parameters", BCP 141, RFC 5342, September 1928 2008. 1930 [RFC6039] - Manral, V., Bhatia, M., Jaeggli, J., and R. White, 1931 "Issues with Existing Cryptographic Protection Methods for 1932 Routing Protocols", RFC 6039, October 2010. 1934 [RFC6326] - Eastlake, D., Banerjee, A., Dutt, D., Perlman, R., and A. 1935 Ghanwani, "Transparent Interconnection of Lots of Links (TRILL) 1936 Use of IS-IS", RFC 6326, July 2011. 1938 [Affinity] - draft-ietf-trill-cmt, work in progress. 1940 [MultiLevel] - draft-perlman-trill-rbridge-multilevel, work in 1941 progress. 1943 [Resilient] - draft-zhang-trill-resilient-trees, work in progress. 1945 Acknowledgements 1947 The authors gratefully acknowledge the contributions and review by 1948 the following: 1950 Adrian Farrel, Radia Perlman, Joe Touch. 1952 And the contributions by the following to [RFC6326]: 1954 Mike Shand, Stewart Bryant, Dino Farinacci, Les Ginsberg, Sam 1955 Hartman, Dan Romascanu, Dave Ward, and Russ White. In particular, 1956 thanks to Mike Shand for the detailed and helpful comments. 1958 This document was produced with raw nroff. All macros used were 1959 defined in the source files. 1961 Authors' Addresses 1963 Donald Eastlake 1964 Huawei Technologies 1965 155 Beaver Street 1966 Milford, MA 01757 USA 1968 Phone: +1-508-333-2270 1969 EMail: d3e3e3@gmail.com 1971 Tissa Senevirathne 1972 Cisco Systems 1973 375 East Tasman Drive, 1974 San Jose, CA 95134 1976 Phone: +1-408-853-2291 1977 EMail: tsenevir@cisco.com 1979 Anoop Ghanwani 1980 Dell 1981 350 Holger Way 1982 San Jose, CA 95134 USA 1984 Phone: +1-408-571-3500 1985 EMail: anoop@alumni.duke.edu 1987 Dinesh Dutt 1988 Cumulus Networks 1989 1089 West Evelyn Avenue 1990 Sunnyvale, CA 94086 USA 1992 EMail: ddutt.ietf@hobbesdutt.com 1994 Ayan Banerjee 1995 Cumulus Networks 1996 1089 West Evelyn Avenue 1997 Sunnyvale, CA 94086 USA 1999 EMail: ayabaner@gmail.com 2001 Copyright, Disclaimer, and Additional IPR Provisions 2003 Copyright (c) 2012 IETF Trust and the persons identified as the 2004 document authors. All rights reserved. 2006 This document is subject to BCP 78 and the IETF Trust's Legal 2007 Provisions Relating to IETF Documents 2008 (http://trustee.ietf.org/license-info) in effect on the date of 2009 publication of this document. Please review these documents 2010 carefully, as they describe your rights and restrictions with respect 2011 to this document. Code Components extracted from this document must 2012 include Simplified BSD License text as described in Section 4.e of 2013 the Trust Legal Provisions and are provided without warranty as 2014 described in the Simplified BSD License. The definitive version of 2015 an IETF Document is that published by, or under the auspices of, the 2016 IETF. Versions of IETF Documents that are published by third parties, 2017 including those that are translated into other languages, should not 2018 be considered to be definitive versions of IETF Documents. The 2019 definitive version of these Legal Provisions is that published by, or 2020 under the auspices of, the IETF. Versions of these Legal Provisions 2021 that are published by third parties, including those that are 2022 translated into other languages, should not be considered to be 2023 definitive versions of these Legal Provisions. For the avoidance of 2024 doubt, each Contributor to the IETF Standards Process licenses each 2025 Contribution that he or she makes as part of the IETF Standards 2026 Process to the IETF Trust pursuant to the provisions of RFC 5378. No 2027 language to the contrary, or terms, conditions or rights that differ 2028 from or are inconsistent with the rights and licenses granted under 2029 RFC 5378, shall have any effect and shall be null and void, whether 2030 published or posted by such Contributor, or included with or in such 2031 Contribution.