idnits 2.17.1 draft-ietf-spring-mpls-path-segment-05.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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (August 20, 2021) is 980 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) == Outdated reference: A later version (-09) exists of draft-ietf-idr-sr-policy-path-segment-04 == Outdated reference: A later version (-17) exists of draft-ietf-ippm-ioam-data-14 == Outdated reference: A later version (-11) exists of draft-ietf-mpls-inband-pm-encapsulation-01 == Outdated reference: A later version (-09) exists of draft-ietf-mpls-rfc6374-sr-03 == Outdated reference: A later version (-13) exists of draft-ietf-pce-sr-bidir-path-07 == Outdated reference: A later version (-09) exists of draft-ietf-pce-sr-path-segment-04 == Outdated reference: A later version (-22) exists of draft-ietf-spring-segment-routing-policy-13 == Outdated reference: A later version (-15) exists of draft-ietf-spring-stamp-srpm-01 Summary: 0 errors (**), 0 flaws (~~), 9 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SPRING Working Group W. Cheng 3 Internet-Draft H. Li 4 Intended status: Standards Track China Mobile 5 Expires: February 21, 2022 M. Chen 6 Huawei 7 R. Gandhi 8 Cisco Systems, Inc. 9 R. Zigler 10 Broadcom 11 August 20, 2021 13 Path Segment in MPLS Based Segment Routing Network 14 draft-ietf-spring-mpls-path-segment-05 16 Abstract 18 A Segment Routing (SR) path is identified by an SR segment list. 19 Only the complete segment list can identify the end-to-end SR path, 20 and a sub-set of segments from the segment list cannot distinguish 21 one SR path from another as they may be partially congruent. SR path 22 identification is a pre-requisite for various use-cases such as 23 Performance Measurement (PM), bidirectional paths correlation, and 24 end-to-end 1+1 path protection. 26 In SR for MPLS data plane (SR-MPLS), the segment identifiers are 27 stripped from the packet through label popping as the packet transits 28 the network. This means that when a packet reaches the egress of the 29 SR path, it is not possible to determine on which SR path it 30 traversed the network. 32 This document defines a new type of segment that is referred to as 33 Path Segment, which is used to identify an SR path in an SR-MPLS 34 network. When used, it is inserted by the ingress node of the SR 35 path and immediately follows the last segment identifier in the 36 segment list of the SR path. The Path Segment will not be popped off 37 until it reaches the egress node of the SR path. The Path Segment 38 then can be used by the egress node to implement SR path 39 identification and correlation. 41 Status of This Memo 43 This Internet-Draft is submitted in full conformance with the 44 provisions of BCP 78 and BCP 79. 46 Internet-Drafts are working documents of the Internet Engineering 47 Task Force (IETF). Note that other groups may also distribute 48 working documents as Internet-Drafts. The list of current Internet- 49 Drafts is at https://datatracker.ietf.org/drafts/current/. 51 Internet-Drafts are draft documents valid for a maximum of six months 52 and may be updated, replaced, or obsoleted by other documents at any 53 time. It is inappropriate to use Internet-Drafts as reference 54 material or to cite them other than as "work in progress." 56 This Internet-Draft will expire on February 21, 2022. 58 Copyright Notice 60 Copyright (c) 2021 IETF Trust and the persons identified as the 61 document authors. All rights reserved. 63 This document is subject to BCP 78 and the IETF Trust's Legal 64 Provisions Relating to IETF Documents 65 (https://trustee.ietf.org/license-info) in effect on the date of 66 publication of this document. Please review these documents 67 carefully, as they describe your rights and restrictions with respect 68 to this document. Code Components extracted from this document must 69 include Simplified BSD License text as described in Section 4.e of 70 the Trust Legal Provisions and are provided without warranty as 71 described in the Simplified BSD License. 73 Table of Contents 75 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 76 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 77 1.2. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 3 78 2. Path Segment . . . . . . . . . . . . . . . . . . . . . . . . 4 79 3. Path Segment Allocation . . . . . . . . . . . . . . . . . . . 6 80 4. Nesting of Path Segments . . . . . . . . . . . . . . . . . . 7 81 5. Path Segment for Performance Measurement . . . . . . . . . . 8 82 6. Path Segment for Bidirectional SR Path . . . . . . . . . . . 9 83 7. Path Segment for End-to-end Path Protection . . . . . . . . . 9 84 8. Security Considerations . . . . . . . . . . . . . . . . . . . 10 85 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 86 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 87 10.1. Normative References . . . . . . . . . . . . . . . . . . 10 88 10.2. Informative References . . . . . . . . . . . . . . . . . 11 89 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 12 90 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 13 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 93 1. Introduction 95 Segment Routing (SR) [RFC8402] is a source routed forwarding method 96 that allows to directly encode forwarding instructions (called 97 segments) in each packet, hence it enables steering traffic through a 98 network without the per-flow states maintained on the transit nodes. 99 Segment Routing can be instantiated on an MPLS data plane or an IPv6 100 data plane. The former is called SR-MPLS [RFC8660], the latter is 101 called SRv6 [RFC8402]. SR-MPLS leverages the MPLS label stack to 102 construct an SR path. 104 In an SR-MPLS network, when a packet is transmitted along an SR path, 105 the labels in the MPLS label stack will be swapped or popped. So 106 that no label or only the last label (e.g. Explicit-Null label) may 107 be left in the MPLS label stack when the packet reaches the egress 108 node. Thus, the egress node cannot determine along which SR path the 109 packet came. 111 However, to support various use-cases in SR-MPLS networks, like end- 112 to-end 1+1 path protection (Live-Live case) [RFC4426], bidirectional 113 path [RFC5654], or Performance Measurement (PM) [RFC7799], the 114 ability to implement path identification on the egress node is a pre- 115 requisite. 117 Therefore, this document introduces a new segment type that is 118 referred to as the Path Segment. A Path Segment is defined to 119 uniquely identify an SR path in an SR-MPLS network in the context of 120 the egress node. It is normally used by the egress nodes for path 121 identification hence to support various use-cases including SR path 122 PM, end-to-end 1+1 SR path protection, and bidirectional SR paths 123 correlation. 125 1.1. Requirements Language 127 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 128 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 129 "OPTIONAL" in this document are to be interpreted as described in 130 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, 131 as shown here. 133 1.2. Abbreviations 135 DM: Delay Measurement. 137 LM: Loss Measurement. 139 MPLS: Multiprotocol Label Switching. 141 MSD: Maximum SID Depth. 143 PM: Performance Measurement. 145 PSID: Path Segment ID. 147 SID: Segment ID. 149 SL: Segment List. 151 SR: Segment Routing. 153 SRLB: SR Local Block 155 SRGB: SR Global Block 157 SR-MPLS: Segment Routing instantiated on MPLS data plane. 159 2. Path Segment 161 A Path Segment is a single label that is assigned from the Segment 162 Routing Local Block (SRLB) [RFC8402] or Segment Routing Global Block 163 (SRGB) [RFC8402] or dynamic MPLS label pool of the egress node of an 164 SR path. It means that the Path Segment is unique in the context of 165 the egress node of the SR path. When a Path Segment is used, the 166 Path Segment MUST be inserted at the ingress node and MUST 167 immediately follow the last label of the SR path, in other words, 168 inserted after the routing segment (adjacency/node/prefix segment) 169 pointing to the egress node. 171 The term of SR path used in this document is a general term that can 172 be used to describe a SR Policy, a Candidate-Path (CP), or a SID List 173 (SL) [I-D.ietf-spring-segment-routing-policy]. Therefore, the Path 174 Segment may be used to identify an SR Policy, its CP, or a SL 175 terminating on an egress node depending on the use-case. 177 The value of the TTL field in the MPLS label stack entry containing 178 the Path Segment MUST be set to the same value as the TTL of the last 179 label stack entry for the last segment in the SR path. If the Path 180 Segment is the bottom label, the S bit MUST be set. 182 Normally, the intermediate nodes will not see the Path Segment label. 183 A Path Segment presenting to an intermediate node is an error 184 condition. 186 A Path Segment can be used in the case of Penultimate Hop Popping 187 (PHP), where some labels are be popped off at the penultimate hop of 188 an SR path, but the Path Segment MUST NOT be popped off until it 189 reaches at the egress node. 191 The egress node MUST pop the Path Segment. The egress node MAY use 192 the Path Segment for further processing. For example, when 193 performance measurement is enabled on the SR path, it can trigger 194 packet counting or timestamping. 196 In some deployments, service labels may be added after the Path 197 Segment label in the MPLS label stack. In this case, the egress node 198 MUST be capable of processing more than one label. The additional 199 processing required, may have an impact on forwarding performance. 201 Generic Associated Label (GAL) is used for Operations, Administration 202 and Maintenance (OAM) in MPLS networks [RFC5586]. When GAL is used, 203 it MUST be added at the bottom of the label stack after the Path 204 Segment label. 206 Entropy label and Entropy Label Indicator (ELI) as described in 207 [RFC8662] for SR-MPLS path, can be placed before or after the Path 208 Segment label in the MPLS label stack. 210 The SR path computation needs to know the Maximum SID Depth (MSD) 211 that can be imposed at each node/link of a given SR path [RFC8664]. 212 This ensures that the SID stack depth of a computed path does not 213 exceed the number of SIDs the node is capable of imposing. The MSD 214 used for path computation MUST include the Path Segment label. 216 The label stack with Path Segment is shown in Figure 1: 218 +--------------------+ 219 | ... | 220 +--------------------+ 221 | Label 1 | 222 +--------------------+ 223 | Label 2 | 224 +--------------------+ 225 | ... | 226 +--------------------+ 227 | Label n | 228 +--------------------+ 229 | Path Segment | 230 +--------------------+ 231 | ... | 232 +--------------------+ 233 ~ Payload ~ 234 +--------------------+ 236 Figure 1: Label Stack with Path Segment 238 Where: 240 o The Labels 1 to n are the segment label stack used to direct how 241 to steer the packets along the SR path. 243 o The Path Segment identifies the SR path in the context of the 244 egress node of the SR path. 246 3. Path Segment Allocation 248 Several ways can be used to allocate the Path Segment. 250 One way is to set up a communication channel (e.g., MPLS Generic 251 Associated Channel (G-ACh)) [RFC5586] between the ingress node and 252 the egress node, and the ingress node of the SR path can directly 253 send a request to the egress node to allocate a Path Segment. The 254 detail of G-ACh based solution is left for future study and out of 255 the scope of this document. 257 Another way is to leverage a centralized controller (e.g., SDN 258 controller) to assign the Path Segment. In this case, the controller 259 will deliver the Path Segment and corresponding path information 260 (e.g., SR policy) to the ingress node. Path Computation Element 261 Communication Protocol (PCEP) based Path Segment allocation for SR 262 Policy is defined in [I-D.ietf-pce-sr-path-segment], BGP based Path 263 Segment allocation for SR Policy is defined in 264 [I-D.ietf-idr-sr-policy-path-segment]. At the same time, the 265 controller MUST make sure (e.g., by some capability discovery 266 mechanisms outside the scope of this document) that the egress node 267 knows the Path Segment and it can process it, as well as the label 268 does not collide with any label allocation done by the egress node. 270 4. Nesting of Path Segments 272 Binding SID (BSID) [RFC8402] can be used for SID list compression. 273 With BSID, an end-to-end SR path can be split into several sub-paths, 274 each sub-path is identified by a BSID. Then an end-to-end SR path 275 can be identified by a list of BSIDs, therefore, it can provide 276 better scalability. 278 BSID and Path SID (PSID) can be combined to achieve both sub-path and 279 end-to-end path monitoring. A reference model for such a combination 280 in (Figure 2) shows an end-to-end path (A->D) that spans three 281 domains (Access, Aggregation and Core domain) and consists of three 282 sub-paths, one in each sub-domain (sub-path (A->B), sub-path (B->C) 283 and sub-path (C->D)). Each sub-path is allocated a BSID. For 284 nesting the sub-paths, each sub-path is allocated a PSID. Then, the 285 SID list of the end-to-end path can be expressed as , where the e-PSID is the PSID of the end-to-end 287 path. The SID list of a sub-path can be expressed as , where the s-PSID is the PSID of the sub-path. 290 Figure 2 shows the details of the label stacks when PSID and BSID are 291 used to support both sub-path and end-to-end path monitoring in a 292 multi-domain scenario. 294 /--------\ /--------\ /--------\ 295 / \ / \ / \ 296 A{ Access }B{ Aggregation }C{ Core }D 297 \ / \ / \ / 298 \--------/ \--------/ \--------/ 299 Sub-path(A->B) Sub-path(B->C) Sub-path(C->D) 300 |<--------------->|<-------------->|<-------------->| 301 E2E Path(A->D) 302 |<------------------------------------------------->| 304 +------------+ 305 ~A->B SubPath~ 306 +------------+ +------------+ 307 |s-PSID(A->B)| ~B->C SubPath~ 308 +------------+ +------------+ 309 | BSID(B->C) | |s-PSID(B->C)| 310 +------------+ +------------+ +------------+ 311 | BSID(C->D) | | BSID(C->D) | ~C->D SubPath~ 312 +------------+ +------------+ +------------+ +------------+ 313 |e-PSID(A->D)| |e-PSID(A->D)| |e-PSID(A->D)| |e-PSID(A->D)| 314 +------------+ +------------+ +------------+ +------------+ 316 Figure 2: Nesting of Path Segments 318 5. Path Segment for Performance Measurement 320 As defined in [RFC7799], performance measurement can be classified 321 into Passive, Active, and Hybrid measurement. Since Path Segment is 322 encoded in the SR-MPLS Label Stack as shown in Figure 1, existing 323 implementation on the egress node can be leveraged for measuring 324 packet counts using the incoming SID (the Path Segment). A different 325 scheme such as carrying such identifier after the bottom of the label 326 stack may require new implementation. 328 For Passive performance measurement, path identification at the 329 measuring points is the prerequisite. Path Segment can be used by 330 the measuring points (e.g., the ingress and egress nodes of the SR 331 path or a centralized controller) to measure packet counts on the 332 egress node and to correlate the packet counters and timestamps from 333 the ingress and egress nodes for a specific SR path, then packet loss 334 and delay can be calculated for the end-to-end path, respectively. 336 Path Segment can also be used for Active performance measurement for 337 an end-to-end SR path in SR-MPLS networks for measuring packet counts 338 on the egress node and for collecting the packet counters and 339 timestamps from the egress node associated with the SR path using 340 probe messages [I-D.ietf-mpls-rfc6374-sr] and 341 [I-D.ietf-spring-stamp-srpm]. 343 Path Segment can also be used for In-situ OAM (IOAM) for SR-MPLS to 344 identify the SR path associated with the in-situ data fields in the 345 data packets on the egress node [I-D.ietf-ippm-ioam-data]. 347 Path Segment can also be used for In-band PM with Alternate Marking 348 Method for SR-MPLS to identify the SR Path associated with the 349 performance metrics collected 350 [I-D.ietf-mpls-inband-pm-encapsulation]. 352 6. Path Segment for Bidirectional SR Path 354 In some scenarios, for example, mobile backhaul transport networks, 355 there are requirements to support bidirectional paths, and the path 356 is normally treated as a single entity. The both directions of the 357 path have the same fate, for example, failure in one direction will 358 result in switching traffic at both directions. MPLS supports this 359 by introducing the concepts of co-routed bidirectional LSP and 360 associated bidirectional LSP [RFC5654]. 362 In the current SR architecture, an SR path is a unidirectional path 363 [RFC8402]. In order to support bidirectional SR paths, a 364 straightforward way is to bind two unidirectional SR paths to a 365 single bidirectional SR path. Path Segments can then be used to 366 identify and correlate the traffic for the two unidirectional SR 367 paths at both ends of the bidirectional path. 369 [I-D.ietf-pce-sr-bidir-path] defines procedures on how to use PCEP 370 for SR Policy to initiate a bidirectional SR path. Also, 371 [I-D.ietf-idr-sr-policy-path-segment] defines procedures on how to 372 use BGP for SR Policy to initiate a bidirectional SR path. 374 7. Path Segment for End-to-end Path Protection 376 For end-to-end 1+1 path protection (i.e., Live-Live case), the egress 377 node of the path needs to know the set of paths that constitute the 378 primary and the secondaries, in order to select the primary path 379 packets for onward transmission, and to discard the packets from the 380 secondaries [RFC4426]. 382 To do this in Segment Routing, each SR path needs a path identifier 383 that is unique at the egress node. For SR-MPLS, this can be the Path 384 Segment label allocated by the egress node. 386 There then needs to be a method of binding this SR path identifiers 387 into equivalence groups such that the egress node can determine for 388 example, the set of packets that represent a single primary path. It 389 is obvious that this equivalence group can be instantiated in the 390 network by an SDN controller using the Path Segments of the SR paths. 392 8. Security Considerations 394 Path Segment in SR-MPLS does not introduce any new behavior or any 395 change in the way the MPLS data plane works. Section 8.1 of 396 [RFC8402] describe the security consideration for SR-MPLS. Path 397 segment is additional metadata that is added to the packet consisting 398 of the SR path. 400 An attacker could exploit path segment to manipulate the accounting 401 of SR traffic at the egress. Path segment could also be used to 402 monitor traffic patterns for the E2E paths. The control protocols 403 used to allocate path segments could also be exploited to disseminate 404 incorrect path segment information. Note that, the path segment is 405 imposed at the ingress and removed at the egress boundary and is not 406 leaked out of the administered domain. 408 9. IANA Considerations 410 This document does not require any IANA actions. 412 10. References 414 10.1. Normative References 416 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 417 Requirement Levels", BCP 14, RFC 2119, 418 DOI 10.17487/RFC2119, March 1997, 419 . 421 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 422 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 423 May 2017, . 425 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 426 Decraene, B., Litkowski, S., and R. Shakir, "Segment 427 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 428 July 2018, . 430 [RFC8660] Bashandy, A., Ed., Filsfils, C., Ed., Previdi, S., 431 Decraene, B., Litkowski, S., and R. Shakir, "Segment 432 Routing with the MPLS Data Plane", RFC 8660, 433 DOI 10.17487/RFC8660, December 2019, 434 . 436 10.2. Informative References 438 [I-D.ietf-idr-sr-policy-path-segment] 439 Li, C., Li, Z., Yin, Y., Cheng, W., and K. Talaulikar, "SR 440 Policy Extensions for Path Segment and Bidirectional 441 Path", draft-ietf-idr-sr-policy-path-segment-04 (work in 442 progress), July 2021. 444 [I-D.ietf-ippm-ioam-data] 445 Brockners, F., Bhandari, S., and T. Mizrahi, "Data Fields 446 for In-situ OAM", draft-ietf-ippm-ioam-data-14 (work in 447 progress), June 2021. 449 [I-D.ietf-mpls-inband-pm-encapsulation] 450 Cheng, W., Min, X., Zhou, T., Dong, X., and Y. Peleg, 451 "Encapsulation For MPLS Performance Measurement with 452 Alternate Marking Method", draft-ietf-mpls-inband-pm- 453 encapsulation-01 (work in progress), April 2021. 455 [I-D.ietf-mpls-rfc6374-sr] 456 Gandhi, R., Filsfils, C., Voyer, D., Salsano, S., and M. 457 Chen, "Performance Measurement Using RFC 6374 for Segment 458 Routing Networks with MPLS Data Plane", draft-ietf-mpls- 459 rfc6374-sr-03 (work in progress), July 2021. 461 [I-D.ietf-pce-sr-bidir-path] 462 Li, C., Chen, M., Cheng, W., Gandhi, R., and Q. Xiong, 463 "Path Computation Element Communication Protocol (PCEP) 464 Extensions for Associated Bidirectional Segment Routing 465 (SR) Paths", draft-ietf-pce-sr-bidir-path-07 (work in 466 progress), July 2021. 468 [I-D.ietf-pce-sr-path-segment] 469 Li, C., Chen, M., Cheng, W., Gandhi, R., and Q. Xiong, 470 "Path Computation Element Communication Protocol (PCEP) 471 Extension for Path Segment in Segment Routing (SR)", 472 draft-ietf-pce-sr-path-segment-04 (work in progress), 473 August 2021. 475 [I-D.ietf-spring-segment-routing-policy] 476 Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and 477 P. Mattes, "Segment Routing Policy Architecture", draft- 478 ietf-spring-segment-routing-policy-13 (work in progress), 479 May 2021. 481 [I-D.ietf-spring-stamp-srpm] 482 Gandhi, R., Filsfils, C., Voyer, D., Chen, M., Janssens, 483 B., and R. Foote, "Performance Measurement Using Simple 484 TWAMP (STAMP) for Segment Routing Networks", draft-ietf- 485 spring-stamp-srpm-01 (work in progress), July 2021. 487 [RFC4426] Lang, J., Ed., Rajagopalan, B., Ed., and D. Papadimitriou, 488 Ed., "Generalized Multi-Protocol Label Switching (GMPLS) 489 Recovery Functional Specification", RFC 4426, 490 DOI 10.17487/RFC4426, March 2006, 491 . 493 [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., 494 "MPLS Generic Associated Channel", RFC 5586, 495 DOI 10.17487/RFC5586, June 2009, 496 . 498 [RFC5654] Niven-Jenkins, B., Ed., Brungard, D., Ed., Betts, M., Ed., 499 Sprecher, N., and S. Ueno, "Requirements of an MPLS 500 Transport Profile", RFC 5654, DOI 10.17487/RFC5654, 501 September 2009, . 503 [RFC7799] Morton, A., "Active and Passive Metrics and Methods (with 504 Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799, 505 May 2016, . 507 [RFC8662] Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., 508 Shakir, R., and J. Tantsura, "Entropy Label for Source 509 Packet Routing in Networking (SPRING) Tunnels", RFC 8662, 510 DOI 10.17487/RFC8662, December 2019, 511 . 513 [RFC8664] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 514 and J. Hardwick, "Path Computation Element Communication 515 Protocol (PCEP) Extensions for Segment Routing", RFC 8664, 516 DOI 10.17487/RFC8664, December 2019, 517 . 519 Acknowledgements 521 The authors would like to thank Adrian Farrel, Stewart Bryant, 522 Shuangping Zhan, Alexander Vainshtein, Andrew G. Malis, Ketan 523 Talaulikar, Shraddha Hegde, and Loa Andersson for their review, 524 suggestions and comments to this document. 526 The authors would like to acknowledge the contribution from Alexander 527 Vainshtein on "Nesting of Path Segments". 529 Contributors 531 The following people have substantially contributed to this document: 533 Cheng Li 534 Huawei Technologies 536 EMail: chengli13@huawei.com 538 Lei Wang 539 China Mobile 541 Email: wangleiyj@chinamobile.com 543 Aihua Liu 544 ZTE Corp 546 Email: liu.aihua@zte.com.cn 548 Greg Mirsky 549 ZTE Corp 551 Email: gregimirsky@gmail.com 553 Authors' Addresses 555 Weiqiang Cheng 556 China Mobile 558 Email: chengweiqiang@chinamobile.com 560 Han Li 561 China Mobile 563 Email: lihan@chinamobile.com 565 Mach(Guoyi) Chen 566 Huawei 568 Email: mach.chen@huawei.com 569 Rakesh Gandhi 570 Cisco Systems, Inc. 571 Canada 573 Email: rgandhi@cisco.com 575 Royi Zigler 576 Broadcom 578 Email: royi.zigler@broadcom.com