idnits 2.17.1 draft-chen-pce-h-connect-access-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 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 -- The document date (March 13, 2017) is 2573 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) == Unused Reference: 'RFC6805' is defined on line 472, but no explicit reference was found in the text == Unused Reference: 'RFC3630' is defined on line 483, but no explicit reference was found in the text == Unused Reference: 'RFC5305' is defined on line 490, but no explicit reference was found in the text == Unused Reference: 'RFC5392' is defined on line 494, but no explicit reference was found in the text == Unused Reference: 'RFC5316' is defined on line 499, but no explicit reference was found in the text == Unused Reference: 'RFC7752' is defined on line 504, but no explicit reference was found in the text ** Downref: Normative reference to an Informational RFC: RFC 6805 -- Obsolete informational reference (is this intentional?): RFC 5316 (Obsoleted by RFC 9346) -- Obsolete informational reference (is this intentional?): RFC 7752 (Obsoleted by RFC 9552) Summary: 1 error (**), 0 flaws (~~), 8 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE Working Group H. Chen 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track M. Toy 5 Expires: September 14, 2017 Verizon 6 X. Liu 7 Jabil 8 L. Liu 9 Fujitsu 10 Z. Li 11 China Mobile 12 March 13, 2017 14 PCEP Link State Abstraction 15 draft-chen-pce-h-connect-access-02 17 Abstract 19 This document presents extensions to the Path Computation Element 20 Communication Protocol (PCEP) for a child PCE to abstract its domain 21 information to its parent for supporting a hierarchical PCE system. 23 Status of This Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF). Note that other groups may also distribute 30 working documents as Internet-Drafts. The list of current Internet- 31 Drafts is at http://datatracker.ietf.org/drafts/current/. 33 Internet-Drafts are draft documents valid for a maximum of six months 34 and may be updated, replaced, or obsoleted by other documents at any 35 time. It is inappropriate to use Internet-Drafts as reference 36 material or to cite them other than as "work in progress." 38 This Internet-Draft will expire on September 14, 2017. 40 Copyright Notice 42 Copyright (c) 2017 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 respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 58 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 59 3. Conventions Used in This Document . . . . . . . . . . . . . . 3 60 4. Connections and Accesses . . . . . . . . . . . . . . . . . . 3 61 4.1. Information on Inter-domain Link . . . . . . . . . . . . 4 62 4.2. Information on ABR . . . . . . . . . . . . . . . . . . . 5 63 4.3. Information on Access Point . . . . . . . . . . . . . . . 5 64 5. Extensions to PCEP . . . . . . . . . . . . . . . . . . . . . 5 65 5.1. Messages for Abstract Information . . . . . . . . . . . . 6 66 5.2. Procedures . . . . . . . . . . . . . . . . . . . . . . . 6 67 5.2.1. Child Procedures . . . . . . . . . . . . . . . . . . 6 68 5.2.2. Parent Procedures . . . . . . . . . . . . . . . . . . 9 69 6. Security Considerations . . . . . . . . . . . . . . . . . . . 10 70 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 71 8. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 10 72 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 73 9.1. Normative References . . . . . . . . . . . . . . . . . . 10 74 9.2. Informative References . . . . . . . . . . . . . . . . . 11 75 Appendix A. Message Encoding . . . . . . . . . . . . . . . . . . 12 76 A.1. Extension to Existing Message . . . . . . . . . . . . . . 12 77 A.1.1. TLVs . . . . . . . . . . . . . . . . . . . . . . . . 12 78 A.1.2. Sub-TLVs . . . . . . . . . . . . . . . . . . . . . . 13 79 A.2. New Message . . . . . . . . . . . . . . . . . . . . . . . 14 80 A.2.1. CONNECTION and ACCESS Object . . . . . . . . . . . . 14 81 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 83 1. Introduction 85 A hierarchical PCE architecture is described in RFC 6805, in which a 86 parent PCE maintains an abstract domain topology, which contains its 87 child domains (seen as vertices in the topology) and the connections 88 among them. 90 For a domain for which a child PCE is responsible, connections 91 attached to the domain may comprise inter-domain links and Area 92 Border Routers (ABRs). For a parent PCE to have the abstract domain 93 topology, each of its child PCEs needs to advertise its connections 94 to the parent PCE. 96 In addition to the connections attached to the domain, there may be 97 some access points in the domain, which are the addresses in the 98 domain to be accessible outside of the domain. For example, an 99 address of a server in the domain that provides a number of services 100 to users outside of the domain is an access point. 102 This document presents extensions to the Path Computation Element 103 Communication Protocol (PCEP) for a child PCE to advertise the 104 information about its connections and access points to its parent PCE 105 and for the parent PCE to build and maintain the abstract domain 106 topology based on the information. The extensions may reduce 107 configurations, thus simplify operations on a PCE system. 109 A child PCE is simply called a child and a parent PCE is called a 110 parent in the following sections. 112 2. Terminology 114 ABR: Area Border Router. Router used to connect two IGP areas 115 (Areas in OSPF or levels in IS-IS). 117 ASBR: Autonomous System (AS) Border Router. Router used to connect 118 together ASes via inter-AS links. 120 TED: Traffic Engineering Database. 122 This document uses terminology defined in [RFC5440]. 124 3. Conventions Used in This Document 126 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 127 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 128 document are to be interpreted as described in [RFC2119]. 130 4. Connections and Accesses 132 A connection is an inter-domain link between two domains in general. 133 An ABR is also a connection, which connects two special domains 134 called areas in a same Autonomous System (AS). 136 An access point in a domain is an address in the domain to be 137 accessible to the outside of the domain. An access point is simply 138 called an access. 140 4.1. Information on Inter-domain Link 142 An inter-domain link connects two domains in two different ASes. 143 Since there is no IGP running over an inter-domain link, we may not 144 obtain the information about the link generated by an IGP. We may 145 suppose that IP addresses are configured on inter-domain links. 147 For a point-to-point (P2P) link connecting two ABSRs A and B in two 148 different domains, from A's point of view, the following information 149 about the link may be obtained: 151 1) Link Type: P2P 152 2) Local IP address 153 3) Remote IP address 154 4) Traffic engineering metric 155 5) Maximum bandwidth 156 6) Maximum reservable bandwidth 157 7) Unreserved bandwidth 158 8) Administrative group 159 9) SRLG 161 We will have a link ID if it is configured; otherwise no link ID 162 (i.e., the Router ID of the neighbor) may be obtained since no IGP 163 adjacency over the link is formed. 165 For a broadcast link connecting multiple ASBRs in a number of 166 domains, on each of the ASBRs X, the same information about the link 167 as above may be obtained except for the followings: 169 a) Link Type: Multi-access, 170 b) Local IP address with mask length, and 171 c) No Remote IP address. 173 In other words, the information about the broadcast link obtained by 174 ASBR X comprises a), b), 4) to 9), but does not include any remote IP 175 address or link ID. We will have a link ID if it is configured; 176 otherwise no link ID (i.e., the interface address of the designated 177 router for the link) may be obtained since no IGP selects it. 179 A parent constructs an abstract AS domain topology after receiving 180 the information about each of the inter-domain links described above 181 from its children. 183 RFC 5392 and RFC 5316 describe the distributions of inter-domain 184 links in OSPF and IS-IS respectively. For each inter-domain link, 185 its neighboring AS number and neighboring ASBR Identity (TE Router 186 ID) need to be configured in IGP (OSPF or IS-IS). 188 In addition, an IGP adjacency between a network node running IGP and 189 a PCE running IGP as a component needs to be configured and fully 190 established if we want the PCE to obtain the inter-domain link 191 information from IGP. 193 These configurations and IGP adjacency establishment are not needed 194 if the extensions in this draft are used. 196 RFC 7752 (BGP-LS) describes the distributions of TE link state 197 information including inter-domain link state. A BGP peer between a 198 network node running BGP and a PCE running BGP as a component needs 199 to be configured and the peer relation must be established before the 200 PCE can obtain the inter-domain link information from BGP. However, 201 some networks may not run BGP. 203 4.2. Information on ABR 205 For an AS running IGP and containing multiple areas, an ABR connects 206 two or more areas. For each area connected to the ABR, the PCE as a 207 child responsible for the area sends its parent the information about 208 the ABR, which indicates the identifier (ID) of the ABR. 210 A parent has the information about each of its children, which 211 includes the domain such as the area for which the child is 212 responsible. The parent knows all the areas to which each ABR 213 connects after receiving the information on the ABR from each of its 214 children. 216 4.3. Information on Access Point 218 For an IP address in a domain to be accessible outside of the domain, 219 the PCE as a child responsible for the domain sends its parent the 220 information about the address. 222 The parent has all the access points (i.e., IP addresses) to be 223 accessible outside of all its children' domains after receiving the 224 information on the access points from each of its children. 226 5. Extensions to PCEP 228 This section focuses on procedures for abstracting domain information 229 after briefing messages containing the abstract information. 231 5.1. Messages for Abstract Information 233 A child abstracts its domain to its parent through sending its parent 234 a message containing the abstract information on the domain. After 235 the relation between the child and the parent is determined, the 236 parent has some information on the child, which includes the child's 237 ID and domain. The message does not need to contain this 238 information. It comprises the followings: 240 o For new or updated Connections and Accesses, 242 * Indication of Update Connections and Accesses 244 * Detail Information about Connections and Accesses 246 o For Connections and Accesses down, 248 * Indication of Withdraw Connections and Accesses 250 * ID Information about Connections and Accesses 252 For a P2P link from ASBR A to B and a broadcast link connecting to A, 253 the detail information on the links includes A's ID, the information 254 on the P2P link and the information on the broadcast link described 255 in Section 4. The ID information on the links includes A's ID, 1) to 256 3) for the P2P link and a) to b) for the broadcast link described in 257 Section 4. A link ID for a link is included if it is configured. 259 For an ABR X, the information on X includes X's ID and a flag 260 indicating that X is ABR. 262 For an Access X (address), the detail information on X includes X and 263 a cost associated with it. The ID information on X is X itself. 265 There are a few ways to encode the information above into a message. 266 For example, one way is to extend an existing Notification message 267 for including the information. Another way is to use a new message. 268 These are put in Appendix A for your reference. 270 5.2. Procedures 272 5.2.1. Child Procedures 274 5.2.1.1. New or Changed Connections and Accesses 276 After a child determines its parent, it sends the parent a message 277 containing the information about the connections (i.e., inter-domain 278 links and ABRs) from its domain to its adjacent domains and the 279 access points in its domain. 281 For any new or changed inter-domain links, ABRs and access points in 282 the domain for which a child is responsible, the child sends its 283 parent a message containing the information about these links, ABRs 284 and access points with indication of Update Connections and Accesses. 286 For example, for a new inter-domain P2P link from ASBR A in a child's 287 domain to ASBR B in another domain, the child sends its parent a 288 message containing an indication of Update Connections and Accesses, 289 A's ID, and the detail information on the link described in section 290 4.1. 292 For multiple new or changed inter-domain links from ASBR A, the child 293 sends its parent a message having an indication of Update Connections 294 and Accesses, and A's ID followed by the detail information about 295 each of the links. 297 In another example, for a new or changed inter-domain broadcast link 298 connected to ASBR X, an ABR Y and an access point 10.10.10.1/32 with 299 cost 10 in a child's domain, the child sends its parent a message 300 containing an indication of Update Connections and Accesses, and X's 301 ID followed by the detail information about the link attached to X 302 and the detail information about ABR Y, and the information on access 303 10.10.10.1/32 with cost 10. 305 For changes on the attributes (such as bandwidth) of an inter-domain 306 link, a threshold may be used to control the frequency of updates 307 that are sent from a child to its parent. At one extreme, the 308 threshold is set to let a child send its parent a update message for 309 any change on the attributes of an inter-domain link. At another 310 extreme, the threshold is set to make a child not to send its parent 311 any update message for any change on the attributes of an inter- 312 domain link. Typically, the threshold is set to allow a child to 313 send its parent a update message for a significant change on the 314 attributes of an inter-domain link. 316 5.2.1.2. Connections and Accesses Down 318 For any inter-domain links, ABRs and access points down in the domain 319 for which a child is responsible, the child sends its parent a 320 message containing the information about these links, ABRs and access 321 points with indication of Withdraw Connections and Accesses. 323 For example, for the inter-domain P2P link from ASBR A down, the 324 child sends its parent a message containing an indication of Withdraw 325 Connections and Accesses, and A's ID, which is followed by the ID 326 information about the link. 328 For multiple inter-domain links from ASBR A down, the child sends its 329 parent a message having an indication of Withdraw Connections and 330 Accesses, and A's ID, which is followed by the ID information about 331 each of the links. 333 5.2.1.3. Child and Parent in Same Organization 335 If a child and its parent are in a same organization, the child may 336 send its parent the information inside its domain. For a parent, 337 after all its children in its organization send their parent the 338 information in their domains, connections and access points, it has 339 in its TED the detail information inside each of its children's 340 domains and the connections among these domains. The parent can 341 compute a path crossing these domains directly and efficiently 342 without sending any path computation request to its children. 344 5.2.1.4. Child as a Parent 346 There are a few ways in which a child as a parent abstracts its 347 domain information to its parent. 349 One way is that the child sends its parent all its domain information 350 if the child and the parent are in a same organization. The 351 information includes the detail network topology inside each of the 352 child's domains, the inter-domain links connecting the domains that 353 the child's children are responsible and the inter-domain links 354 connecting these domains to other adjacent domains. 356 In another way, the child abstracts each of the domains that its 357 children are responsible as a cloud (or say abstract node) and these 358 clouds are connected by the inter-domain links attached to the 359 domains. The child sends its parent all the inter-domain links 360 attached to any of the domains. 362 In a third way, the child abstracts all its domains including the 363 domains for which its children are responsible as a cloud. This 364 abstraction is described below in details. 366 If a parent P1 is also a child of another parent P2, P1 as a child 367 sends its parent P2 a message containing the information about the 368 connections and access points. P1 as a parent has the connections 369 among its children's domains. But these connections are hidden from 370 its parent P2. P1 may have connections from its children's domains 371 to other domains. P1 as a child sends its parent P2 these 372 connections. 374 P1 as a parent has the access points in its children's domains to be 375 accessible outside of the domains. P1 as child may not send all of 376 these to its parent P2. It sends its parent some of these access 377 points according to some local policies. 379 From P2's point of view, its child P1 is responsible for one domain, 380 which has some connections to its adjacent domains and some access 381 points to be accessible. 383 5.2.2. Parent Procedures 385 5.2.2.1. Process Connections and Accesses 387 A parent stores into its TED the connections and accesses for each of 388 its children according to the messages containing connections and 389 accesses received. For a message containing Update Connections and 390 Accesses, it updates the connections and accesses in the TED 391 accordingly. For a message containing Withdraw Connections and 392 Accesses, it removes the connections and accesses from the TED. 394 After receiving the messages for connections and accesses from its 395 children, the parent builds and maintains the TED for the topology of 396 its children's domains, in which each of the domains is seen as a 397 cloud or an abstract node. The information inside each of the 398 domains is hidden from the parent. There are connections among the 399 domains and the access points in the domains to be accessible in the 400 topology. 402 For a new P2P link from node A to B with no link ID configured, when 403 receiving a message containing the link from a child, the parent 404 stores the link from A into its TED, where A is attached to the 405 child's domain as a cloud. It finds the link's remote end B using 406 the remote IP address of the link. After finding B, it associates 407 the link attached to A with B and the link attached to B with A. 408 This creates a bidirectional connection between A and B. 410 For a new P2P link from node A to B with link ID configured, when 411 receiving a message containing the link, the parent stores the link 412 from A into its TED. It finds the link's remote end B using the link 413 ID (i.e., B's ID). 415 For a new broadcast link connecting multiple nodes with no link ID 416 configured, when the parent receives a message containing the link 417 attached to node X, it stores the link from X into its TED. It finds 418 the link's remote end P using the link's local IP address with 419 network mask. P is a Pseudo node identified by the local IP address 420 of the designated node selected from the nodes connected to the link. 421 After finding P, it associates the link attached to X with P and the 422 link connected to P with X. If P is not found, a new Pseudo node P 423 is created. The parent associates the link attached to X with P and 424 the link attached to P with X. This creates a bidirectional 425 connection between X and P. 427 The first node and second node from which the parent receives a 428 message containing the link is selected as the designed node and 429 backup designed node respectively. After the designed node is down, 430 the backup designed node becomes the designed node and the node other 431 than the designed node with the largest local IP address connecting 432 to the link is selected as the backup designed node. 434 When the old designed node is down and the backup designed node 435 becomes the new designed node, the parent updates its TED through 436 removing the link between each of nodes X and old P (the Pseudo node 437 corresponding to the old designed node) and adding a link between 438 each of nodes X (still connecting to the broadcast link) and new P 439 (the Pseudo node corresponding to the new designed node). 441 5.2.2.2. Detail Topology in a Domain 443 If a parent is in a same organization as its child, it stores into 444 its TED the detail information inside the child's domain when 445 receiving a message containing the information from the child; 446 otherwise, it discards the information and issues a warning 447 indicating that the information is sent to a wrong place. 449 6. Security Considerations 451 The mechanism described in this document does not raise any new 452 security issues for the PCEP protocols. 454 7. IANA Considerations 456 This section specifies requests for IANA allocation. 458 8. Acknowledgement 460 The authors would like to thank Jescia Chen, Adrian Farrel, and Eric 461 Wu for their valuable comments on this draft. 463 9. References 465 9.1. Normative References 467 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 468 Requirement Levels", BCP 14, RFC 2119, 469 DOI 10.17487/RFC2119, March 1997, 470 . 472 [RFC6805] King, D., Ed. and A. Farrel, Ed., "The Application of the 473 Path Computation Element Architecture to the Determination 474 of a Sequence of Domains in MPLS and GMPLS", RFC 6805, 475 DOI 10.17487/RFC6805, November 2012, 476 . 478 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 479 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 480 DOI 10.17487/RFC5440, March 2009, 481 . 483 [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering 484 (TE) Extensions to OSPF Version 2", RFC 3630, 485 DOI 10.17487/RFC3630, September 2003, 486 . 488 9.2. Informative References 490 [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic 491 Engineering", RFC 5305, DOI 10.17487/RFC5305, October 492 2008, . 494 [RFC5392] Chen, M., Zhang, R., and X. Duan, "OSPF Extensions in 495 Support of Inter-Autonomous System (AS) MPLS and GMPLS 496 Traffic Engineering", RFC 5392, DOI 10.17487/RFC5392, 497 January 2009, . 499 [RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in 500 Support of Inter-Autonomous System (AS) MPLS and GMPLS 501 Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316, 502 December 2008, . 504 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 505 S. Ray, "North-Bound Distribution of Link-State and 506 Traffic Engineering (TE) Information Using BGP", RFC 7752, 507 DOI 10.17487/RFC7752, March 2016, 508 . 510 Appendix A. Message Encoding 512 A.1. Extension to Existing Message 514 An existing Notification message may be extended to advertise the 515 information about connections and access points. The following new 516 Notification-type (NT) and Notification-value (NV) of a NOTIFICATION 517 object in the message are defined: 519 o NT=8 (TBD): Connections and Accesses 521 * NV=1: Update Connections and Accesses. A NT=8 and NV=1 522 indicates that the child sends its parent updates on the 523 information about Connections and Accesses, and TLVs containing 524 the information are in the object. 526 * NV=2: Withdraw Connections and Accesses. A NT=8 and NV=2 527 indicates that the child asks its parent to remove Connections 528 and Accesses indicated by TLVs in the object. 530 A.1.1. TLVs 532 Four TLVs are defined for connections and accesses. They are Inter- 533 Domain link TLV, Router-ID TLV, Access IPv4/IPv6 Prefix TLV. 535 The format of the Inter-Domain link TLV is illustrated below. 537 0 1 2 3 538 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 539 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 540 | Type (tTBD1) | Length | 541 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 542 | Inter-Domain Link Sub-TLVs | 543 ~ ~ 544 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 546 An Inter-Domain link TLV describes a single inter-domain link. It 547 comprises a number of inter-domain link sub-TLVs for the information 548 described in section 4, which are the sub-TLVs defined in RFC 3630 or 549 their equivalents except for the local IP address with mask length 550 defined below. 552 The format of the Router-ID TLV is shown below. Undefined flags MUST 553 be set to zero. The ID indicates the ID of a router. For a router 554 running OSPF, the ID may be the 32-bit OSPF router ID of the router. 555 For a router running IS-IS, the ID may be the 48-bit IS-IS router ID 556 of the router. For a router not running OSPF or IS-IS, the ID may be 557 the 32-bit ID of the router configured. 559 0 1 2 3 560 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 561 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 562 | Type (tTBD2) | Length | 563 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 564 |B|E|I| Flags | | 565 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + 566 | 32-bit/48-bit ID ~ 567 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 568 Flag B: Set to 1 indicating ABR (B is for Border) 569 Flag E: Set to 1 indicating ASBR (E is for External) 570 Flag I: Set to 1 indicating ID of local router (I is for ID) 572 The format of the Access IPv4/IPv6 Prefix TLV is shown as follows. 573 The cost is the metric to the prefix. The Prefix Length indicates 574 the length of the prefix. The IPv4/IPv6 Prefix indicates an access 575 IPv4/IPv6 address prefix. 577 0 1 2 3 578 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 579 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 580 | Type (tTBD3/tTDB4) | Length | 581 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 582 | cost | 583 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 584 | Prefix Length | IPv4/IPv6 Prefix (variable) ~ 585 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 587 A.1.2. Sub-TLVs 589 The format of the Sub-TLV for a local IPv4/IPv6 address with mask 590 length is shown as follows. 592 0 1 2 3 593 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 594 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 595 | Type (stTBD1/stTBD2) | Length | 596 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 597 | IPv4/IPv6 Address ~ 598 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 599 | Mask Length | 600 +-+-+-+-+-+-+-+-+ 602 The IPv4/IPv6 Address indicates the local IPv4/IPv6 address of a 603 link. The Mask Length indicates the length of the IPv4/IPv6 address 604 mask. 606 A.2. New Message 608 A new message may be defined to advertise the connections and 609 accesses from a child to its parent. The format of the message 610 containing Connections and Access (AC for short) is as follows: 612 ::= 613 [] 614 where: 615 ::= [] 616 ::= [ | ] 617 ::= [] 619 Where the value of the Message-Type in the Common Header indicates 620 the new message type. The exact value is to be assigned by IANA. A 621 new RP (NRP) object will be defined, which follows the Common Header. 623 A new flag W (Withdraw) in the NRP object is defined to indicate 624 whether the connections and access are withdrawn. When flag W is set 625 to one, the parent removes the connections and accesses contained in 626 the message after receiving it. When flag W is set to zero, the 627 parent adds/updates the connections and accesses in the message after 628 receiving it. 630 An alternative to flag W in the NRP object is a similar flag in each 631 CONNECTION and ACCESS object such as using one bit in Res flags for 632 flag W. For example, when the flag is set to one in the object, the 633 parent removes the connections and accesses in the object after 634 receiving it. When the flag is set to zero in the object, the parent 635 adds/updates the connections and accesses in the object after 636 receiving it. 638 In another option, one byte in a CONNECTION and ACCESS Object is 639 defined as flags field and one bit is used as flag W. The other 640 undefined bits in the flags field MUST be set to zero. 642 The objects in the new message are defined below. 644 A.2.1. CONNECTION and ACCESS Object 646 A new object, called CONNECTION and ACCESS Object (CA for short), is 647 defined. It has Object-Class ocTBD1. Four Object-Types are defined 648 under CA object: 650 o CA Inter-Domain Link: CA Object-Type is 1. 652 o CA ABR: CA Object-Type is 2. 654 o CA Access IPv4 Prefix: CA Object-Type is 3. 656 o CA Access IPv6 Prefix: CA Object-Type is 4. 658 Each of these objects are described below. 660 The format of Inter-Domain Link object body is as follows: 662 Object-Class = ocTBD1 (Connection and Access) 663 Object-Type = 1 (CA Inter-Domain Link) 664 0 1 2 3 665 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 666 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 667 |W| Flags | Router-ID TLV | 668 +-+-+-+-+-+-+-+-+ + 669 ~ ~ 670 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 671 | Inter-Domain Link TLVs | 672 ~ ~ 673 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 675 The Router-ID TLV indicates an ASBR in the domain, which is a local 676 end of inter-domain links. Each of the Inter-Domain Link TLVs 677 describes an inter-domain link and comprises a number of inter-domain 678 link Sub-TLVs. Flag W=1 indicates withdraw the links. W=0 indicates 679 new or changed links. 681 The format of ABR object body is illustrated below: 683 Object-Class = ocTBD1 (Connection and Access) 684 Object-Type = 2 (CA ABR) 685 0 1 2 3 686 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 687 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 688 |W| Flags | Router-ID TLVs | 689 +-+-+-+-+-+-+-+-+ + 690 ~ ~ 691 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 693 Each of the Router-ID TLVs indicates an ABR in the domain. Flag W=1 694 indicates withdraw the ABRs. W=0 indicates new ABRs. 696 The format of Access IPv4/IPv6 Prefix object body is as follows: 698 Object-Class = ocTBD1 (Connection and Access) 699 Object-Type = 3/4 (CA Access IPv4/IPv6 Prefix) 700 0 1 2 3 701 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 702 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 703 |W| Flags | Access IPv4/IPv6 Prefix TLVs | 704 +-+-+-+-+-+-+-+-+ + 705 ~ ~ 706 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 708 Each of the Access IPv4/IPv6 Prefix TLVs describes an access IPv4/ 709 IPv6 address prefix in the domain, which is accessible to outside of 710 the domain. Flag W=1 indicates withdraw the address prefixes. W=0 711 indicates new address prefixes. 713 The TLVs in the objects are the same as those described above. 715 Authors' Addresses 717 Huaimo Chen 718 Huawei Technologies 719 Boston, MA 720 USA 722 EMail: Huaimo.chen@huawei.com 724 Mehmet Toy 725 Verizon 726 USA 728 EMail: mehmet.toy@verizon.com 730 Xufeng Liu 731 Jabil 732 McLean, VA 733 USA 735 EMail: Xufeng_Liu@jabil.com 736 Lei Liu 737 Fujitsu 738 USA 740 EMail: lliu@us.fujitsu.com 742 Zhenqiang Li 743 China Mobile 744 No.32 Xuanwumenxi Ave., Xicheng District 745 Beijing 100032 746 P.R. China 748 EMail: li_zhenqiang@hotmail.com