idnits 2.17.1 draft-xiaobn-ccamp-application-flexe-cm-00.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 11 instances of too long lines in the document, the longest one being 16 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 249 has weird spacing: '...on-mode nego...' == Line 250 has weird spacing: '...ndwidth str...' == Line 252 has weird spacing: '...-number uin...' == Line 257 has weird spacing: '...ot-list strin...' == Line 258 has weird spacing: '...ot-list strin...' -- The document date (7 March 2022) is 781 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'RFC7950' is mentioned on line 128, but not defined == Unused Reference: 'RFC3688' is defined on line 554, but no explicit reference was found in the text == Unused Reference: 'RFC6020' is defined on line 558, but no explicit reference was found in the text == Unused Reference: 'RFC6241' is defined on line 563, but no explicit reference was found in the text Summary: 1 error (**), 0 flaws (~~), 10 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force M. Wang 3 Internet-Draft L. Han 4 Intended status: Informational China Mobile 5 Expires: 8 September 2022 X. Niu, Ed. 6 Q. Wang, Ed. 7 ZTE Corporation 8 7 March 2022 10 Application of FlexE Configuration Model 11 draft-xiaobn-ccamp-application-flexe-cm-00 13 Abstract 15 This document gives some application of FlexE configuration model, 16 including the configuration of the FlexE group and the FlexE client. 17 It is useful for the deployment of FlexE configuration model in 18 related network devices. 20 Status of This Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at https://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on 8 September 2022. 37 Copyright Notice 39 Copyright (c) 2022 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 44 license-info) in effect on the date of publication of this document. 45 Please review these documents carefully, as they describe your rights 46 and restrictions with respect to this document. Code Components 47 extracted from this document must include Revised BSD License text as 48 described in Section 4.e of the Trust Legal Provisions and are 49 provided without warranty as described in the Revised BSD License. 51 Table of Contents 53 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 54 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 2.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 56 2.2. FlexE terminology used in this document . . . . . . . . . 4 57 3. Requirements of FlexE configuration . . . . . . . . . . . . . 4 58 3.1. Requirements . . . . . . . . . . . . . . . . . . . . . . 4 59 4. FlexE configuration model and configuration illustration . . 5 60 4.1. Configuration of the FlexE group . . . . . . . . . . . . 6 61 4.2. Configuration of the FlexE client . . . . . . . . . . . . 8 62 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 63 6. Authors (Full List) . . . . . . . . . . . . . . . . . . . . . 11 64 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 12 65 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 66 9. Security Considerations . . . . . . . . . . . . . . . . . . . 12 67 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 68 10.1. Normative References . . . . . . . . . . . . . . . . . . 12 69 10.2. Informative References . . . . . . . . . . . . . . . . . 14 70 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14 72 1. Introduction 74 Flex Ethernet (FlexE) implementation agreement version 1.1 75 [OIFFLEXE1] , 2.0 [OIFFLEXE2], 2.1 [OIFFLEXE2.1] and 2.2 76 [OIFFLEXE2.2]have been published by OIF. FlexE provides a generic 77 mechanism for supporting a variety of Ethernet MAC rates that may or 78 may not correspond to any existing Ethernet PHY rate. This includes 79 MAC rates that are both greater than (through bonding) and less than 80 (through sub-rate and channelization) the Ethernet PHY rates used to 81 carry FlexE. 83 In ITU-T, Recommendation [ITU-T_G8023_2018] specifies the functions 84 required to insert and extract information to/from an Ethernet 85 physical layer (PHY) as defined in IEEE 802.3, including the FlexE 86 shim as defined in the FLEXE IA (currently based on version 1.1 ). 87 Recommendation [ITU-T_G8312_2020] specifies the rates and formats for 88 use in metro transport network (MTN) digital layer networks, and the 89 MTNS frame format is specified in a way that maximizes reuse of OIF 90 FLEXE IA ( version 2.1 at present) implementation logic, including 91 support for bonding homogenous groups of 50GBASE-R, 100GBASE-R, 92 200GBASE-R, 400GBASE-R interfaces. 94 In IETF, some drafts discussed FlexE framework, controls, and 95 configurations. The draft [FlexE-cm] defines a FlexE configuration 96 YANG model for the configuration and management of FlexE devices. 98 Based on current FlexE standards above and the FlexE configuration 99 model, applications of FlexE configuration model, including the 100 configuration of the FlexE group and the FlexE client are 101 illustrated, and it is useful for the deployment of FlexE 102 configuration model in related network devices. 104 2. Terminology 106 A simplified graphical representation of the data model is used in 107 this document. The meaning of the symbols in the YANG data tree 108 presented later in this document is defined in [RFC8340]. They are 109 provided below for reference. 111 o Brackets "[" and "]" enclose list keys. 113 o Abbreviations before data node names: "rw" means configuration 114 (read-write) and "ro" state data (read-only). 116 o Symbols after data node names: "?" means an optional node, "!" 117 means a presence container, and "*" denotes a list and leaf-list 119 o Parentheses enclose choice and case nodes, and case nodes are also 120 marked with a colon (":"). 122 o Ellipsis ("...") stands for contents of subtrees that are not 123 shown. 125 o Some of the key terms used in this document are listed as follow. 127 The terminology for describing YANG data models is found in 128 [RFC7950]. 130 2.1. Requirements Language 132 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 133 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 134 "OPTIONAL" in this document are to be interpreted as described in BCP 135 14 [RFC2119] [RFC8174] when, and only when, they appear in all 136 capitals, as shown here. 138 2.2. FlexE terminology used in this document 140 FlexE Group: A FlexE group is composed of from 1 to m bonded Ethernet 141 PHYs. 143 FlexE Client: An Ethernet flow based on a MAC data rate that may or 144 may not correspond to any Ethernet PHY rate. 146 FlexE Calendar: The total capacity of a FlexE group is represented as 147 a collection of slots which have a granularity of 5G or 25G. The 148 calendar for a FlexE group composed of n 100G PHYs is represented as 149 an array of 20n slots (each representing 5G of bandwidth). This 150 calendar is partitioned into sub-calendars, with 20 slots per 100G 151 PHY. 153 Detailed description of these terms can be found in [OIFFLEXE2.2]. 155 3. Requirements of FlexE configuration 157 To model the FlexE YANG model, it need some analysis of the 158 requirements of FlexE configuration, and give more priority to the 159 fundamental configuration. Based on that, proper augments and 160 extensions can be made in future. 162 In following sections, the requirements are summarized according to 163 the descriptions in OIF FlexE and ITU-T FlexE related standards. In 164 [ITU-T_G8023_2018] and [ITU-T_G8312_2020], some MI (Management 165 Information), such as MI_TxGID, MI_TxFlexEMAP, are defined for 166 specific network atomic functions in order to configure the 167 functions. Some MIs are reported from the atomic functions which are 168 useful for monitoring the real states and verifying the consistency 169 between the configuration and the real states. 171 Here configuration requirements of FlexE groups, FlexE clients, FlexE 172 calendar and calendar slots are summarized and illustrated. 174 3.1. Requirements 176 Requirements of the FlexE group include, 178 R-Group-01 The model SHALL support the management of the FlexE group, 179 consisting of one or more Ethernet PHY(s). 181 R-Group-02 The model SHOULD be able to verify that the collection of 182 Ethernet PHY(s) included in a FlexE group have the same 183 characteristics (e.g. number of PHYs, rate of PHYs, etc.) at the 184 local FlexE shims. If inconsistency exists, notifications (e.g. 185 errors) SHOULD be invoked. 187 Requirements of the calendar slot include, 189 R-Calendar-01 The model SHALL support the updates of usage of 190 calendar slots in the FlexE calendar, and support the notification of 191 the usage. 193 R-Calendar-02 The model SHALL support the verification of assignment 194 of calendar slots in the FlexE calendar. If inconsistency exists, 195 notifications (e.g. errors) SHOULD be invoked. 197 R-Calendar-03 The model MAY support the configuration of calendar A 198 and B. 200 R-Calendar-04 The model MAY support the switching of a calendar 201 configuration between calendar A and B. 203 Requirements of the FlexE client include, 205 R-Client-01 The model SHALL support to assign required calendar slots 206 to transport the FlexE clients. The assigned calendar slots MAY be 207 in different FlexE calendars with different ETH PHYs. 209 R-Client-02 The model SHALL support to add FlexE client(s) into or 210 remove FlexE client(s) from the FlexE group, without affecting the 211 other existing FlexE clients whose size and calendar slot assignments 212 are not changed. 214 4. FlexE configuration model and configuration illustration 216 A FlexE group must be configured first before any client signals are 217 carried over it. The initial configuration commands could be from 218 external management system, SDN controller etc. 220 Currently, the FlexE configuration model shows the necessary 221 parameters about the FlexE group and the FlexE client. That is the 222 base model for further augments or extensions. 224 In this section, more details about parameters in the model are 225 elaborated, and some examples are illustrated based on following 226 figure. 228 +----------+ +----------+ 229 | | 1 FlexE group 1 | | 230 FlexE client1--| +----------------------+ |--FlexE client1 231 | FlexE | 2 2 | FlexeE | 232 FlexE client2--| mux +----------------------+ demux |--FlexE client2 233 | | 3 3 | | 234 | +----------------------+ | 235 | | 4 4 | | 236 | +----------------------+ | 237 +----------+ +----------+ 239 Figure 1 241 4.1. Configuration of the FlexE group 243 Following YANG tree is an excerpt from the FlexE-cm YANG model. 245 +--rw flexe-groups 246 +--rw flexe-group* [group-index] 247 +--rw index uint32 248 +--rw group-num uint32 249 +--rw negotiation-mode negotiation-mode-type 250 +--ro total-bandwidth string 251 +--ro free-bandwidth? string 252 +--ro sync-phy-number uint32 253 +--rw flexe-phys 254 +--rw flexe-phy-list* [port-name] 255 +--rw port-name if:interface-ref 256 +--rw phy-number uint32 257 +--ro free-timeslot-list string 258 +--ro used-timeslot-list string 260 Figure 2 262 More explanations for the flexe-group data node include, 264 a. The leaf index provides an index to the FlexE group. The value 265 of the index may be generated by local network device or network 266 management system, so the values in FlexE mux and demux may be 267 different. 269 b. The leaf group-num is transported between FlexE mux and FlexE 270 demux. 272 c. The leaf negotiation-mode includes dynamic mode and static mode, 273 and the fault value is dynamic mode. For the dynamic mode, the 274 calendar slot information for the FlexE client is only sent to 275 the FlexE mux. While for the static mode, the calendar slot 276 information for the FlexE client is configured both to the FlexE 277 mux and demux. 279 d. The leaf sync-phy-number is used for the synchronization 280 management channel. 282 e. The list flexe-phys includes all the PHYs bonded in a FlexE 283 group. Each of the PHYs is identified by the port-name and phy- 284 number in the group. Both ends of each PHY in the FlexE group 285 should use the same PHY number. 287 288 20221 289 2222 290 static 291 1 292 293 294 ifa001 295 1 296 297 298 ifa002 299 2 300 301 302 ifa003 303 3 304 305 306 ifa004 307 4 308 309 310 312 Figure 3 314 While in the FlexE demux, part of the configuration for FlexE group 315 is shown as follows, 317 318 3001 319 2222 320 static 321 1 322 323 324 ifb001 325 1 326 327 328 ifb002 329 2 330 331 332 ifb003 333 3 334 335 336 ifb004 337 4 338 339 340 342 Figure 4 344 Based on the configuration above, the running states in the FlexE 345 device can be gotten by using NETCONF Get command. To FlexE group, 346 the running states include total-bandwidth and free-bandwidth of the 347 FlexE group, and free-timeslot-list and used-timeslot-list of each 348 PHY in the FlexE group. 350 4.2. Configuration of the FlexE client 352 Following YANG tree is an excerpt from the FlexE-cm YANG model. 354 augment /if:interfaces/if:interface: 355 +--rw flexe-client 356 +--rw client-index uint32 357 +--rw group-index leafref 358 +--rw client-num uint32 359 +--rw timeslot-lists 360 +--rw timeslot-list* [port-name] 361 +--rw port-name if:interface-ref 362 +--rw time-slot string 364 Figure 5 366 More explanations for the flexe-client data node include, 368 a. The leaf client-index provides an index to the FlexE client. The 369 value of the client-index may be configured by the network device 370 or network management system or controller, and the values in 371 FlexE mux and demux may be different. 373 b. The leafref group-index references the FlexE group with the 374 specific group index. It means that the FlexE group should be 375 created before configuring the FlexE client, and the FlexE client 376 will be transported by the specific FlexE group. 378 c. The leaf client-num is used to indicate the FlexE client. The 379 value of the client-num should be configured by the network 380 management system or controller, and the values in FlexE mux and 381 demux should be the same. 383 d. The container timeslot-lists shows all the calendar slots 384 assigned to the FlexE client. In the list timeslot-list, the 385 total assignment of slots in each PHY, which is indicated by the 386 leaf port-name, are indicated by the slots in the leaf time-slot. 388 For example, two FlexE clients are configured to be transported by 389 the FlexE group in section 4.1. 391 The bandwidth of the first FlexE client is 10Gb/s, and the assigned 392 calendar slots include two 5G slots. 394 The bandwidth of the second FlexE client is 200Gb/s, and the assigned 395 calendar slots include 40 5G slots, exactly located in two 100G PHYs. 396 This configuration shows the capability of FlexE bonding. 398 Part of the configuration for the first and second FlexE client in 399 FlexE mux is shown as follows, 400 401 6001 402 20221 403 1001 404 405 406 ifa001 407 1-2 408 409 410 412 413 6002 414 20221 415 1002 416 417 418 ifa002 419 1-20 420 422 423 ifa003 424 1-20 425 426 427 429 Figure 6 431 Part of the configuration for the first and second FlexE client in 432 FlexE demux is shown as follows, 433 434 7001 435 3001 436 1001 437 438 439 ifb001 440 1-2 441 442 443 445 446 7002 447 3001 448 1002 449 450 451 ifb002 452 1-20 453 455 456 ifb003 457 1-20 458 459 460 462 Figure 7 464 5. Acknowledgements 466 6. Authors (Full List) 468 Minxue Wang 470 China Mobile 472 No.32 Xuanwumen west street 474 Beijing, China 476 Email: wangminxue@chinamobile.com 477 Liuyan Han 479 China Mobile 481 No.32 Xuanwumen west street 483 Beijing, China 485 Email: hanliuyan@chinamobile.com 487 Xiaobing Niu (editor) 489 ZTE 491 Beijing, China 493 Email: niu.xiaobing@zte.com.cn 495 Qilei Wang (editor) 497 ZTE 499 Nanjing, China 501 Email: wang.qilei@zte.com.cn 503 7. Contributors 505 8. IANA Considerations 507 This memo includes no request to IANA. 509 9. Security Considerations 511 TBD. 513 10. References 515 10.1. Normative References 517 [ITU-T_G8023_2018] 518 ITU-T, "ITU-T G.8023: Characteristics of equipment 519 functional blocks supporting Ethernet physical layer and 520 Flex Ethernet interfaces; 521 11/2018", https://www.itu.int/rec/T-REC-G.8023, November 522 2018. 524 [ITU-T_G8312_2020] 525 ITU-T, "ITU-T G.8312: Interfaces for metro transport 526 networks; 12/2020", https://www.itu.int/rec/T-REC- 527 G.8312-202012-I, December 2020. 529 [OIFFLEXE1] 530 OIF, "Flex Ethernet Implementation Agreement 1.1(OIF- 531 FLEXE-01.1); 06/2017", https://www.oiforum.com/wp- 532 content/uploads/2019/01/FLEXE1.1.pdf, June 2017. 534 [OIFFLEXE2] 535 OIF, "Flex Ethernet Implementation Agreement 2.0(OIF- 536 FLEXE-02.0); 06/2018", https://www.oiforum.com/wp- 537 content/uploads/2019/01/OIF-FLEXE-02.0-1.pdf, June 2018. 539 [OIFFLEXE2.1] 540 OIF, "Flex Ethernet Implementation Agreement 2.1(OIF- 541 FLEXE-02.1); 07/2019", https://www.oiforum.com/wp- 542 content/uploads/OIF-FLEXE02.1.pdf, July 2019. 544 [OIFFLEXE2.2] 545 OIF, "Flex Ethernet Implementation Agreement 2.2(OIF- 546 FLEXE-02.2); 10/2021", https://www.oiforum.com/wp- 547 content/uploads/OIF-FLEXE-02.2.pdf, October 2021. 549 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 550 Requirement Levels", BCP 14, RFC 2119, 551 DOI 10.17487/RFC2119, March 1997, 552 . 554 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 555 DOI 10.17487/RFC3688, January 2004, 556 . 558 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 559 the Network Configuration Protocol (NETCONF)", RFC 6020, 560 DOI 10.17487/RFC6020, October 2010, 561 . 563 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 564 and A. Bierman, Ed., "Network Configuration Protocol 565 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 566 . 568 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 569 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 570 May 2017, . 572 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 573 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 574 . 576 10.2. Informative References 578 [FlexE-cm] IETF, "IETF CCAMP draft, YANG Data Model for FlexE 579 Management; 03/2022", 580 https://datatracker.ietf.org/doc/draft-wang-ccamp-flexe- 581 yang-cm/, March 2022. 583 Authors' Addresses 585 Minxue Wang 586 China Mobile 587 No.32 Xuanwumen west street 588 Beijing 589 China 590 Email: wangminxue@chinamobile.com 592 Liuyan Han 593 China Mobile 594 No.32 Xuanwumen west street 595 Beijing 596 China 597 Email: hanliuyan@chinamobile.com 599 Xiaobing Niu (editor) 600 ZTE Corporation 601 Beijing 602 China 603 Email: niu.xiaobing@zte.com.cn 604 Qilei Wang (editor) 605 ZTE Corporation 606 Nanjing 607 China 608 Email: wang.qilei@zte.com.cn