idnits 2.17.1 draft-hao-idr-ls-trill-02.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 7 instances of too long lines in the document, the longest one being 2 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 28, 2015) is 3194 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: 'RFC6325' on line 229 -- Looks like a reference, but probably isn't: 'IS-IS' on line 86 -- Looks like a reference, but probably isn't: 'RFC7176' on line 333 -- Looks like a reference, but probably isn't: 'RFC7357' on line 190 -- Looks like a reference, but probably isn't: 'RFC2119' on line 140 -- Looks like a reference, but probably isn't: 'RFC7172' on line 145 -- Looks like a reference, but probably isn't: 'I-D.ietf-idr-ls-distribution' on line 365 -- Looks like a reference, but probably isn't: 'BGP-LS' on line 386 -- Looks like a reference, but probably isn't: 'RFC6952' on line 428 == Unused Reference: '1' is defined on line 451, but no explicit reference was found in the text == Unused Reference: '2' is defined on line 456, but no explicit reference was found in the text == Unused Reference: '3' is defined on line 460, but no explicit reference was found in the text == Unused Reference: '4' is defined on line 463, but no explicit reference was found in the text == Unused Reference: '5' is defined on line 467, but no explicit reference was found in the text == Unused Reference: '6' is defined on line 472, but no explicit reference was found in the text == Unused Reference: '7' is defined on line 476, but no explicit reference was found in the text == Outdated reference: A later version (-13) exists of draft-ietf-idr-ls-distribution-10 Summary: 1 error (**), 0 flaws (~~), 9 warnings (==), 10 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 IDR Working Group Weiguo Hao 2 Donald Eastlake 3 Internet Draft Huawei 4 Intended status: Standard Track Susan Hares 5 Hickory Hill Consulting 6 Expires: November 2015 July 28, 2015 8 Distribution of TRILL Link-State using BGP 9 draft-hao-idr-ls-trill-02.txt 11 Abstract 13 This draft describes a TRILL link state and MAC address reachability 14 information distribution mechanism using a BGP LS extension. 15 External components such as an SDN Controller can use the 16 information for topology visibility, troubleshooting, network 17 automation, etc. 19 Status of this Memo 21 This Internet-Draft is submitted to IETF in full conformance with 22 the provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF), its areas, and its working groups. Note that 26 other groups may also distribute working documents as Internet- 27 Drafts. 29 Internet-Drafts are draft documents valid for a maximum of six 30 months and may be updated, replaced, or obsoleted by other documents 31 at any time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 The list of current Internet-Drafts can be accessed at 35 http://www.ietf.org/ietf/1id-abstracts.txt. 37 The list of Internet-Draft Shadow Directories can be accessed at 38 http://www.ietf.org/shadow.html. 40 Copyright Notice 42 Copyright (c) 2015 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (http://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with 50 respect to this document. 52 Table of Contents 54 1. Introduction ................................................ 2 55 2. Conventions used in this document............................ 3 56 3. Carrying TRILL Link-State Information in BGP................. 4 57 3.1. Node Descriptors........................................ 5 58 3.1.1. IGP Router-ID...................................... 6 59 3.2. MAC Address Descriptors................................. 6 60 3.2.1. MAC-Reachability TLV............................... 7 61 3.3. The BGP-LS Attribute.................................... 7 62 3.3.1. Node Attribute TLVs................................ 7 63 3.3.1.1. Node Flag Bits TLV............................ 7 64 3.3.1.2. Opaque Node Attribute TLV..................... 8 65 3.3.2. Link Attribute TLVs................................ 9 66 4. Operational Considerations................................... 9 67 5. Security Considerations..................................... 10 68 6. IANA Considerations ........................................ 11 69 7. References ................................................. 11 70 7.1. Normative References................................... 11 71 7.2. Informative References................................. 12 72 8. Acknowledgments ............................................ 12 74 1. Introduction 76 BGP has been extended to distribute IGP link-state and traffic 77 engineering information to some external components [I-D.ietf-idr- 78 ls-distribution], such as the PCE and ALTO servers. The information 79 can be used by these external components to compute a MPLS-TE path 80 across IGP areas, visualize and abstract network topology, and the 81 like. 83 TRILL (Transparent Interconnection of Lots of Links) protocol 84 [RFC6325] provides a solution for least cost transparent routing in 85 multi-hop networks with arbitrary topologies and link technologies, 86 using [IS-IS] [RFC7176] link-state routing and a hop count. TRILL 87 switches are sometimes called RBridges (Routing Bridges). 89 The TRILL protocol has been deployed in many data center networks. 90 Data center automation is a vital step to increase the speed and 91 agility of business. An SDN controller as an external component 92 normally can be used to provide centralized control and automation 93 for the data center network. Making a holistic view of whole network 94 topology available to the SDN controller is an important part for 95 data center network automation and troubleshooting. 97 +-------------+ 98 | SDN | 99 --------| Controller |-------- 100 | +-------------+ | 101 | | 102 + + + + 103 + +-----------+ + 104 | | 105 +--------+ |IP Network | +--------+ 106 | | +----+ +----+ | | 107 +---+ +---+ | | | | | | | | +---+ +---+ 108 |ES1|-|RB1|-| Area 1 |-|BRB1| |BRB2|-| Area 2 |-|RB2|-|ES2| 109 +---+ +---+ | | +----+ +----+ | | +---+ +---+ 110 | | | | | | 111 +--------+ +-----------+ +--------+ 113 |<----TRILL ------>||<-----TRILL ----->| 115 Figure 1: TRILL interconnection 117 In Data Center interconnection scenario illustrated in figure 1, a 118 single SDN Controller or network management system (NMS) can be used 119 for end-to-end network management. End-to-end topology visibility on 120 the SDN controller or NMS is very useful for whole network 121 automation and troubleshooting. BGP LS can be used by the external 122 SDN controller to collect multiple TRILL domain's link-state. 124 If ESADI (End Station Address Distribution Information) protocol 125 [RFC7357] is used for control plane MAC learning in each data center, 126 BGP LS also can be used for MAC address reachability information 127 synchronization across multiple TRILL domains. End-to-end unicast 128 forwarding paths can be calculated based on the synchronized 129 information. 131 This document describes the detailed BGP LS extension mechanisms for 132 TRILL link state and MAC address reachability information 133 distribution. 135 2. Conventions used in this document 137 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 138 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 139 document are to be interpreted as described in [RFC2119]. 141 BGP - Border Gateway Protocol 143 BGP-LS - BGP Link-State 145 Data label - VLAN or FGL (Fine Grained Label [RFC7172]) 147 IS - Intermediate System (for this document, all relevant 148 intermediate systems are RBridges) 150 NLRI - Network Layer Reachability Information 152 SDN - Software Defined Networking 154 RBridge - A device implementing the TRILL protocol 156 TRILL - Transparent Interconnection of Lots of Links 158 3. Carrying TRILL Link-State Information in BGP 160 In [I-D.ietf-idr-ls-distribution], four NLRI types are defined as 161 follows: Node NLRI, Link NLRI, IPv4 Topology Prefix NLRI and IPv6 162 Topology Prefix NLRI. For TRILL link-state distribution, the Node 163 NLRI and Link NLRI are extended to carry layer 3 gateway role and 164 link MTU information. TRILL specific attributes are carried using 165 opaque Node Attribute TLVs, such as nickname, distribution tree 166 number and identifiers, interested VLANs/Fine Grained Label, and 167 multicast group address, and etc. 169 To differentiate TRILL protocol from layer 3 IGP protocol, a new 170 TRILL Protocol-ID is defined. 172 +-------------+----------------------------------+ 173 | Protocol-ID | NLRI information source protocol | 174 +-------------+----------------------------------+ 175 | 1 | IS-IS Level 1 | 176 | 2 | IS-IS Level 2 | 177 | 3 | OSPFv2 | 178 | 4 | Direct | 179 | 5 | Static configuration | 180 | 6 | OSPFv3 | 181 | TBD | TRILL | 182 +-------------+----------------------------------+ 183 Table 1: Protocol Identifiers 185 ESADI (End Station Address Distribution Information) protocol 186 [RFC7357] is a per data label control plane MAC learning solution. 187 MAC address reachability information is carried in ESADI packets. 189 Compared with data plane MAC learning solution, ESADI protocol has 190 security and fast update advantage that are pointed out in [RFC7357]. 192 For an RBridge that is announcing participation in ESADI, the 193 RBridge can distribute MAC address reachability information to 194 external components using BGP. A new NLRI type of ''MAC Reachability 195 NLRI'' is requested for the MAC address reachability distribution. 197 +------+---------------------------+ 198 | Type | NLRI Type | 199 +------+---------------------------+ 200 | 1 | Node NLRI | 201 | 2 | Link NLRI | 202 | 3 | IPv4 Topology Prefix NLRI | 203 | 4 | IPv6 Topology Prefix NLRI | 204 | TBD | MAC Reachability NLRI | 205 +------+---------------------------+ 206 Table 2: NLRI Types 208 The MAC Reachability NLRI uses the format as shown in the following 209 figure. 211 0 1 2 3 212 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 213 +-+-+-+-+-+-+-+-+ 214 | Protocol-ID | 215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 216 | Identifier | 217 | (64 bits) | 218 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 219 // Local Node Descriptor (variable) // 220 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 221 // MAC Address Descriptors (variable) // 222 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 223 Figure 2: The MAC Reachability NLRI format 225 3.1. Node Descriptors 227 The Node Descriptor Sub-TLV types include Autonomous System and BGP- 228 LS Identifier, iS-IS Area-ID and IGP Router-ID. TRILL uses a fixed 229 zero Area Address as specified in [RFC6325], Section 4.2.3. This is 230 encoded in a 4-byte Area Address TLV (TLV #1) as follows: 232 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 233 | 0x01, Area Address Type | (1 byte) 234 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 235 | 0x02, Length of Value | (1 byte) 236 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 237 | 0x01, Length of Address | (1 byte) 238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 239 | 0x00, zero Area Address | (1 byte) 240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 241 Figure 3: Area Address TLV 243 3.1.1. IGP Router-ID 245 Similar to layer 3 IS-IS, TRILL protocol uses 7-octet "IS-IS ID" as 246 the identity of an RBridge or a pseudonode, IGP Router ID sub-TLV in 247 Node Descriptor TLVs contains the 7-octet "IS-IS ID". In TRILL 248 network, each RBridge has a unique 48-bit (6-octet) IS-IS System ID. 249 This ID may be derived from any of the RBridge's unique MAC 250 addresses or configured. A pseudonode is assigned a 7-octet ID by 251 the DRB (Designated RBridge) that created it, the DRB is similar to 252 the "Designated Intermediate System" (DIS) corresponding to a LAN. 254 3.2. MAC Address Descriptors 256 The ''MAC Address Descriptor'' field is a set of Type/Length/Value 257 (TLV) triplets. ''MAC Address Descriptor'' TLVs uniquely identify an 258 MAC address reachable by a Node. The following attributes TLVs are 259 defined: 261 +--------------+-----------------------+----------+-----------------+ 262 | TLV Code | Description | Length | Value defined | 263 | Point | | | in: | 264 +--------------+-----------------------+----------+-----------------+ 265 | 1 | MAC-Reachability | variable | section 3.2.1 | 266 +--------------+-----------------------+----------+-----------------+ 267 Table 3: MAC Address Descriptor TLVs 269 3.2.1. MAC-Reachability TLV 271 +-+-+-+-+-+-+-+-+ 272 | Type= MAC-RI | (1 byte) 273 +-+-+-+-+-+-+-+-+ 274 | Length | (1 byte) 275 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+ 276 |V|F| RESV | Data Label | (4 bytes) 277 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 278 | MAC (1) (6 bytes) | 279 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 280 | ................. | 281 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 282 | MAC (N) (6 bytes) | 283 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 284 Figure 4: MAC-Reachability TLV format 286 Length is 4 plus a multiple of 6. 288 The bits of 'V' and 'F' are used to identify Data Label type and are 289 defined as follows: 291 +----------+-------------------------+ 292 | Bit | Description | 293 +----------+-------------------------+ 294 | 'V' | VLAN | 295 | 'F' | Fine Grained Label | 296 +----------+-------------------------+ 297 Table 4: Data Label Type Bits Definitions 299 Notes: If BGP LS is used for NVO3 network MAC address distribution 300 between external SDN Controller and NVE, Data Label can be used to 301 represent 24 bits VN ID. 303 3.3. The BGP-LS Attribute 305 3.3.1. Node Attribute TLVs 307 3.3.1.1. Node Flag Bits TLV 309 A new Node Flag bit is added as follows: 311 0 1 2 3 312 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 313 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 314 | Type | Length | 315 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 316 |O|T|E|B|G| Reserved | 317 +-+-+-+-+-+-+-+-+-+-+-+ 318 Figure 5: Node Flag Bits TLV format 320 The new bit and remaining reserved bits are defined as follows: 322 +----------+----------------------------+-----------+ 323 | Bit | Description | Reference | 324 +----------+----------------------------+-----------+ 325 | 'G' | Layer 3 Gateway Bit | [RFC7176] | 326 | Reserved | Reserved for future use | | 327 +----------+----------------------------+-----------+ 328 Table 5: Node Flag Bits Definitions 330 3.3.1.2. Opaque Node Attribute TLV 332 The Opaque Node Attribute TLV is used as the envelope to 333 transparently carry TRILL specific information. In [RFC7176], there 334 are the following Sub-TLVs in the Router Capability and MT- 335 Capability TLVs and the Group Address (GADDR) TLV that need to be 336 carried. Future possible TRILL TLVs/Sub-TLVs extension also can be 337 carried using the Opaque Node Attribute TLV. 339 Descriptions IS-IS TLV/Sub-TLV 340 ------------------------------------ 341 TRILL-VER 22/13 342 NICKNAME 22/6 343 TREES 22/7 344 TREE-RT-IDs 22/8 345 TREE-USE-IDs 22/9 346 INT-VLAN 22/10 347 VLAN-GROUP 22/14 348 INT-LABEL 22/15 349 RBCHANNELS 22/16 350 AFFINITY 22/17 351 LABEL-GROUP 22/18 352 GMAC-ADDR 142/1 353 GIP-ADDR 142/2 354 GIPV6-ADDR 142/3 355 GLMAC-ADDR 142/4 356 GLIP-ADDR 142/5 357 GLIPV6-ADDR 142/6 359 Table 6: TRILL TLVs/Sub-TLVs 361 3.3.2. Link Attribute TLVs 363 Link attribute TLVs are TLVs that may be encoded in the BGP-LS 364 attribute with a link NLRI. Besides the TLVs that has been defined 365 in [I-D.ietf-idr-ls-distribution] section 3.3.2 table 9, the 366 following 'Link Attribute' TLV is provided for TRILL. 368 +-----------+----------------+--------------+------------------+ 369 | TLV Code | Description | IS-IS TLV | Defined in: | 370 | Point | | /Sub-TLV | | 371 +-----------+----------------+--------------+------------------+ 372 | TBD | Link MTU | 22/28 | [RFC7176]/2.4 | 373 +-----------+----------------+--------------+------------------+ 374 Table 7: Link Attribute TLVs 376 4. Operational Considerations 378 This document does not require any MIB or Yang model to configure 379 operational parameters. 381 An implementation of this specification[idr-ls-trill], MUST do the 382 malformed attribute checks below, and if it detects a malformed 383 attribute, it should use the 'Attribute Discard' action per [I- 384 D.ietf.idr-error-handling] section 2. 386 An implementation MUST perform the following expanded [BGP-LS] 387 syntactic check for determining if the message is malformed: 389 o Does the sum of all TLVs found in the BGP LS attribute 390 correspond to the BGP LS path attribute length ? 392 o Does the sum of all TLVs found in the BGP MP_REACH_NLRI 393 attribute correspond to the BGP MP_REACH_NLRI length ? 395 o Does the sum of all TLVs found in the BGP MP_UNREACH_NLRI 396 attribute correspond to the BGP MP_UNREACH_NLRI length ? 398 o Does the sum of all TLVs found in a Node-, Link, prefix (IPv4 399 or IPv6) NLRI attribute correspond to the Node-, Link- or Prefix 400 Descriptors 'Total NLRI Length' field ? 402 o Does any fixed length TLV correspond to the TLV Length field 403 in this document ? 405 o Does the sum of MAC reachability TLVs equal the length of the 406 field? 408 In addition, the following checks need to be made for the fields 409 specific to the BGP LS for TRILL: 411 o PROTOCOL ID is TRILL 413 o NLRI types are valid per table 2 415 o MAC Reachability NLRI has correct format including: 417 o Identifier (64 bits), 419 o local node descriptor with AREA address TLV has 420 the form found in figure 2, 422 o opaque TLV support the range of ISIS-TLV/SUB-TLV shown in 423 table 3, and link TLVs support the range in figure 8. 425 5. Security Considerations 427 Procedures and protocol extensions defined in this document do not 428 affect the BGP security model. See [RFC6952] for details. 430 6. IANA Considerations 432 For all of the following assignments, [this document] is the 433 reference. 435 IANA is requested to assign one Protocol-ID for "TRILL" from the 436 BGP-LS registry of Protocol-IDs. 438 IANA is requested to assign one NLRI Type for "MAC Reachability" 439 from the BGP-LS registry of NLRI Types. 441 IANA is requested to assign one Node Flag bit for "Layer 3 Gateway" 442 from the BGP-LS registry of BGP-LS Attribute TLVs. 444 IANA is requested to assign one new TLV type for "Link MTU" from the 445 BGP-LS registry of BGP-LS Attribute TLVs. 447 7. References 449 7.1. Normative References 451 [1] [I-D.ietf-idr-ls-distribution] Gredler, H., Medved, J., 452 Previdi, S., Farrel, A., and S.Ray, "North-Bound Distribution of 453 Link-State and TE Information using BGP", draft-ietf-idr-ls- 454 distribution-10(work in progress), January 2015. 456 [2] [I-D.ietf.idr-error-handling] Enke, C., John, S., Pradosh, M., 457 Keyur,P., "Revised Error Handling for BGP UPDATE Messages", 458 draft-ietf-idr-error-handling-19(work in progress), April 2015. 460 [3] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 461 Requirement Levels", BCP 14, RFC 2119, March 1997. 463 [4] [RFC6325] Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S.,and 464 A. Ghanwani, "Routing Bridges (RBridges): Base Protocol 465 Specification", RFC 6325, July 2011. 467 [5] [RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, 468 R., and D. Dutt, "Transparent Interconnection of Lots of Links 469 (TRILL): Fine-Grained Labeling", RFC 7172, DOI 10.17487/RFC7172, 470 May 2014, . 472 [6] [RFC7176] Eastlake, D., Senevirathne, T., Ghanwani, A., Dutt, 473 D., Banerjee, A.," Transparent Interconnection of Lots of Links 474 (TRILL) Use of IS-IS'', May 2014. 476 [7] [RFC7357] - Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., 477 and O. Stokes, "Transparent Interconnection of Lots of Links 478 (TRILL): End Station Address Distribution Information (ESADI) 479 Protocol", RFC 7357, September 2014, . 482 7.2. Informative References 484 8. Acknowledgments 486 Authors like to thank Jie Dong, Mingui Zhang, Qin Wu, Shunwan Wang, 487 Zitao Wang, Lili Wang for their valuable inputs. 489 Authors' Addresses 491 Weiguo Hao 492 Huawei Technologies 493 101 Software Avenue, 494 Nanjing 210012 495 China 497 Phone: +86-25-56623144 498 Email: haoweiguo@huawei.com 500 Donald E. Eastlake 501 Huawei Technologies 502 155 Beaver Street 503 Milford, MA 01757 USA 505 Phone: +1-508-333-2270 506 Email: d3e3e3@gmail.com 508 Susan K. Hares 509 Hickory Hill Consulting 510 7453 Hickory Hill 511 Saline, MI 48176 USA 513 Email: shares@ndzh.com