idnits 2.17.1 draft-chh-bier-bier-yang-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 5 instances of too long lines in the document, the longest one being 38 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 87 has weird spacing: '...ge-size uin...' == Line 132 has weird spacing: '...-prefix uint...' == Line 136 has weird spacing: '...-prefix uint...' == Line 145 has weird spacing: '...bfr-nbr uin...' == Line 149 has weird spacing: '...bfr-nbr uin...' == (4 more instances...) -- The document date (July 6, 2015) is 3216 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. 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: 'I-D.ietf-bier-architecture' is defined on line 518, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-bier-mpls-encapsulation' is defined on line 529, but no explicit reference was found in the text == Unused Reference: 'RFC6020' is defined on line 541, but no explicit reference was found in the text == Unused Reference: 'RFC6241' is defined on line 545, but no explicit reference was found in the text == Unused Reference: 'RFC6991' is defined on line 549, but no explicit reference was found in the text == Unused Reference: 'RFC7223' is defined on line 552, but no explicit reference was found in the text == Outdated reference: A later version (-08) exists of draft-ietf-bier-architecture-01 == Outdated reference: A later version (-11) exists of draft-ietf-bier-isis-extensions-00 == Outdated reference: A later version (-12) exists of draft-ietf-bier-mpls-encapsulation-01 == Outdated reference: A later version (-18) exists of draft-ietf-bier-ospf-bier-extensions-00 ** Obsolete normative reference: RFC 7223 (Obsoleted by RFC 8343) Summary: 2 errors (**), 0 flaws (~~), 17 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 BIER WG Ran. Chen 3 Internet-Draft Fangwei. Hu 4 Intended status: Standards Track Zheng. Zhang 5 Expires: January 7, 2016 Xianxia. Dai 6 ZTE Corporation 7 July 6, 2015 9 YANG Data Model for BIER Protocol 10 draft-chh-bier-bier-yang-00.txt 12 Abstract 14 This document defines a YANG data model for BIER configuration and 15 operation. 17 Status of This Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at http://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on January 7, 2016. 34 Copyright Notice 36 Copyright (c) 2015 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (http://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 52 2. Design of the Data Model . . . . . . . . . . . . . . . . . . 2 53 3. Configuration . . . . . . . . . . . . . . . . . . . . . . . . 4 54 4. Control plane configuration . . . . . . . . . . . . . . . . . 4 55 5. States . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 56 6. Notification . . . . . . . . . . . . . . . . . . . . . . . . 5 57 7. BIER YANG Data Model . . . . . . . . . . . . . . . . . . . . 5 58 8. Security Considerations . . . . . . . . . . . . . . . . . . . 11 59 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 60 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 61 11. Normative references . . . . . . . . . . . . . . . . . . . . 11 62 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 64 1. Introduction 66 This document defines a YANG data model for BIER configuration and 67 operation. 69 2. Design of the Data Model 71 module: ietf-bier 72 augment /rt:routing/rt:routing-instance: 73 +--rw bier 74 +--rw transport-type? identityref 75 +--rw af 76 | +--rw ipv4 77 | | +--rw bfr-prefix inet:ipv4-prefix 78 | +--rw ipv6 79 | +--rw bfr-prefix inet:ipv6-prefix 80 | 81 +--rw mt *[mt-id] 82 | +--rw mt-id uint16 83 | +--rw sub-domain *[sub-domain-id] 84 | | +--rw sub-domain-id uint16 85 | | +--rw bfr-id uint16 86 | | +--rw label uint32 87 | | +--rw label-range-size uint16 88 | | +--rw bitstringlength uint16 89 | | +--rw frr boolean 90 | +--rw rpf-enable? boolean 91 +--rw interfaces 92 +--rw interface* [name] 93 +--rw name if:interface-ref 94 +--bfd boolean 96 augment /rt:routing/rt:routing-instance/rt:routing-protocols/rt:routing-protocol/isis:isis/isis:instance: 97 +--rw bier 98 +--rw enabled? boolean 99 +--rw mt 100 +--rw advertise? boolean 101 +--rw receive? boolean 103 augment /rt:routing/rt:routing-instance/rt:routing-protocols/rt:routing-protocol/ospf:ospf/ospf:instance: 104 +--rw bier 105 +--rw enabled? boolean 106 +--rw mt 107 +--rw advertise? boolean 108 +--rw receive? boolean 110 augment /rt:routing-state/rt:routing-instance: 111 +--ro bier 112 +--ro bfr-prefix inet:ip-prefix 113 +--ro bier-infomation 114 | +--ro mt-id uint16 115 | +--ro sub-domain *[sub-domain-id] 116 | | +--ro sub-domain-id uint16 117 | | +--ro bfr-id uint16 118 | | +--ro label uint32 119 | | +--ro label-range-size uint16 120 | | +--ro bitstringlength uint16 121 | | +--ro bitstring uint32 122 | +--ro bier-mapping-infomation 123 | +--ro label? uint32 124 | +--ro label-range-size uint16 125 | 126 +--ro birts 127 | +--ro birt *[name] 128 | +--ro name 129 | +--ro address-family 130 | +--ro ipv4 131 | | +--ro bfr-id uint16 132 | | +--ro bfr-prefix uint16 133 | | +--ro bfr-nbr uint16 134 | +--ro ipv6 135 | +--ro bfr-id uint16 136 | +--ro bfr-prefix uint16 137 | +--ro bfr-nbr uint16 138 +--ro bifts 139 +--ro bift *[name] 140 +--ro name 141 +--ro address-family 142 +--ro ipv4 143 | +--ro bfr-id uint16 144 | +--ro f-bm uint16 145 | +--ro bfr-nbr uint16 146 +--ro ipv6 147 +--ro bfr-id uint16 148 +--ro f-bm uint16 149 +--ro bfr-nbr uint16 151 notifications: 152 +---n bfr-id-collision? 153 | +--ro bfr-id? uint16 154 +---n bfr-zero? 155 | +--ro bfr-id? uint16 156 +---n sub-domain-id-collision 157 +--ro sub-domain-id? uint16 158 +--ro mt-id? uint16 160 3. Configuration 162 This Module augments the "/rt:routing/rt:routing-instance:" with a 163 BIER container. This Container defines all the configuration 164 parameters related to BIER for this particular routing-instance. 166 The BIER configuration contains global routing-instance configuration 167 and interface configuration. 169 The global routing-instance configuration includes BIER transport 170 type, AF, MT. 172 The interface configuration includes name and bfd. 174 4. Control plane configuration 176 This Module augments routing-protocol configuration with BIER. 178 This Module supports ISIS ([I-D.ietf-bier-isis-extensions])and OSPF 179 ([I-D.ietf-bier-ospf-bier-extensions]) as control plane for BIER. 181 5. States 183 It proposes mt-id, subdomain and other information, such as bier- 184 mapping-information. 186 6. Notification 188 This Module includes bfr-id-collision, bfr-zero, sub-domain-id- 189 collision. 191 7. BIER YANG Data Model 193 module ietf-bier { 195 namespace "urn:ietf:params:xml:ns:yang:ietf-bier"; 197 prefix "bier"; 199 import ietf-routing { 200 prefix "rt"; 201 } 203 import ietf-inet-types { 204 prefix "inet"; 205 } 207 import ietf-interfaces { 208 prefix "if"; 209 } 211 import ietf-ip { 212 prefix "ip"; 213 } 215 import ietf-isis{ 216 prefix "isis"; 217 } 219 import ietf-ospf { 220 prefix "ospf"; 221 } 222 organization 223 "IETF BIER(Bit Indexed Explicit Replication ) Working Group"; 225 contact 226 WG List: 228 WG Chair: Tony Przygienda 229 231 WG Chair: Greg Shepherd 232 234 Editor: Ran Chen 235 236 Editor: Fangwei Hu 237 238 Editor: Zheng Zhang 239 240 Editor: Xianxian Dai 241 243 description 244 " The YANG module defines a generic configuration model for BIER."; 246 revision 2015-06-22 { 247 description 248 "Initial revision."; 249 reference 250 "reference "draft-chen-bier-bier-yang-00"; 251 } 253 /* Identities */ 255 identity transport-type { 256 description 257 "Base identity for BIER transport."; 258 } 259 identity Bier-transport-mpls { 260 base Bier-transport; 261 description 262 "This identity represents MPLS transport for bier"; 263 } 265 /* Configuration Data */ 266 augment "/rt:routing/rt:routing-instance" { 267 description 268 "This augments routing-instance configuration with bier."; 269 container bier { 270 leaf transport-type { 271 type identityref { 272 base bier-transport; 273 } 274 default "bier-transport-mpls"; 275 description "Dataplane to be used."; 276 } 278 container af { 279 container ipv4 { 280 list mapping-entry { 281 key "bfr-prefix"; 282 leaf bfr-prefix { 283 type inet:ipv4-prefix; 284 } 285 leaf label { 286 type uint32; 287 } 288 leaf label-range-size { 289 type uint16; 290 } 291 } 292 } 293 container ipv6 { 294 list mapping-entry { 295 key "bfr-prefix"; 296 leaf bfr-prefix { 297 type inet:ipv6-prefix; 298 } 299 leaf label { 300 type uint32; 301 } 302 leaf label-range-size { 303 type uint16; 304 } 305 } 306 } 307 } 309 list mt { 310 key "mt-id"; 311 leaf mt-id{ 312 type uint16; 313 } 314 list sub-domain { 315 key "sub-domain-id" 316 leaf sub-domain-id { 317 type unit16; 318 } 319 } 320 leaf bfr-id { 321 type unit16; 322 } 323 leaf label { 324 type uint32; 325 } 326 leaf label-range-size { 327 type uint16; 328 } 330 leaf bitstringlength { 331 type uint16; 332 } 333 leaf frr { 334 type boolean; 335 } 336 leaf rpf-enable{ 337 type boolean; 338 } 340 container interfaces { 341 list interface{ 342 key "name"; 343 leaf name { 344 type if:interface-ref 345 } 346 leaf bfd { 347 type boolean; 348 } 349 } 350 } 352 } 353 } 354 } 355 augment "/rt:routing/rt:routing-instance/rt:routing-protocols/rt:routing-protocol/isis:isis/isis:instance" { 356 description 357 "This augments ISIS protocol configuration with bier"; 358 container bier { 359 leaf enable { 360 type boolean; 361 default false; 362 description 363 "Enables bier protocol extensions."; 364 } 365 container mt{ 366 leaf advertise { 367 type boolean; 368 default true; 369 } 370 leaf receive { 371 type boolean; 372 default true; 373 } 374 } 375 } 376 } 377 augment "/rt:routing/rt:routing-instance/rt:routing-protocols/rt:routing-protocol/ospf:ospf/ospf:instance" { 378 description 379 "This augments ISIS protocol configuration with bier"; 380 container bier { 381 leaf enable { 382 type boolean; 383 default false; 384 description 385 "Enables bier protocol extensions."; 386 } 387 container mt{ 388 leaf advertise { 389 type boolean; 390 default true; 391 } 392 leaf receive { 393 type boolean; 394 default true; 395 } 396 } 397 } 398 } 400 /* Operational data */ 401 augment "/rt:routing-state/rt:routing-instance" { 402 description 403 "This augments the operational states with bier."; 405 container bier { 406 leaf bfr-prefix { 407 type inet:ipv4-prefix; 408 } 409 container bier-infomation{ 410 leaf mt-id{ 411 type uint16; 412 } 413 list sub-domain{ 414 key "sub-domain-id" 415 leaf sub-domain-id{ 416 type uint16; 417 } 418 leaf bfr-id{ 419 type uint16; 420 } 421 leaf label { 422 type uint32; 423 } 424 leaf label-range-size { 425 type uint16; 426 } 427 leaf bitstringlength{ 428 type uint16; 429 } 430 leaf bitstring{ 431 type uint32; 432 } 433 } 434 container bier-mapping-infomation{ 435 leaf label { 436 type uint32; 437 } 438 leaf label-range-size { 439 type uint16; 440 } 441 } 442 } 443 } 445 container birts{ 446 list birt{ 447 key "name" 448 leaf name{ 449 type string; 450 } 451 container address-family{ 452 container ipv4{ 453 leaf bfr-id{ 454 type uint16; 455 } 456 leaf f-bm{ 457 type uint16; 458 } 459 leaf bfr-nbr{ 460 type uint16; 461 } 462 } 463 container ipv6{ 464 leaf bfr-id{ 465 type uint16; 466 } 467 leaf f-bm{ 468 type uint16; 469 } 470 leaf bfr-nbr{ 471 type uint16; 472 } 473 } 475 } 476 } 477 } 478 } 479 /* Notifications */ 480 notification bfr-id-collision{ 481 leaf bfr-id{ 482 type uint16; 483 } 484 } 486 notification bfr-zero{ 487 leaf bfr-id{ 488 type uint16; 489 } 490 } 492 notification sub-domain-id-collision{ 493 leaf sub-domain-id{ 494 type uint16; 495 } 497 leaf mt-id{ 498 type uint16; 499 } 500 } 501 } 503 8. Security Considerations 505 TBD. 507 9. Acknowledgements 509 TBD. 511 10. IANA Considerations 513 This document requires no IANA Actions. Please remove this section 514 before RFC publication. 516 11. Normative references 518 [I-D.ietf-bier-architecture] 519 Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and 520 S. Aldrin, "Multicast using Bit Index Explicit 521 Replication", draft-ietf-bier-architecture-01 (work in 522 progress), June 2015. 524 [I-D.ietf-bier-isis-extensions] 525 Ginsberg, L., Aldrin, S., Zhang, J., and T. Przygienda, 526 "BIER support via ISIS", draft-ietf-bier-isis- 527 extensions-00 (work in progress), April 2015. 529 [I-D.ietf-bier-mpls-encapsulation] 530 Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J., and 531 S. Aldrin, "Encapsulation for Bit Index Explicit 532 Replication in MPLS Networks", draft-ietf-bier-mpls- 533 encapsulation-01 (work in progress), June 2015. 535 [I-D.ietf-bier-ospf-bier-extensions] 536 Psenak, P., Kumar, N., Wijnands, I., Dolganow, A., 537 Przygienda, T., Zhang, J., and S. Aldrin, "OSPF Extensions 538 For BIER", draft-ietf-bier-ospf-bier-extensions-00 (work 539 in progress), April 2015. 541 [RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the 542 Network Configuration Protocol (NETCONF)", RFC 6020, 543 October 2010. 545 [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A. 546 Bierman, "Network Configuration Protocol (NETCONF)", RFC 547 6241, June 2011. 549 [RFC6991] Schoenwaelder, J., "Common YANG Data Types", RFC 6991, 550 July 2013. 552 [RFC7223] Bjorklund, M., "A YANG Data Model for Interface 553 Management", RFC 7223, May 2014. 555 Authors' Addresses 557 Ran Chen 558 ZTE Corporation 559 No.50 Software Avenue,Yuhuatai District 560 Nanjing, Jiangsu Province 210012 561 China 563 Phone: +86 025 88014636 564 Email: chen.ran@zte.com.cn 565 Fangwei Hu 566 ZTE Corporation 567 No.889 Bibo Rd 568 Shanghai 201203 569 China 571 Phone: +86 21 68896273 572 Email: hu.fangwei@zte.com.cn 574 Zheng Zhang 575 ZTE Corporation 576 No.50 Software Avenue,Yuhuatai District 577 Nanjing, Jiangsu Province 210012 578 China 580 Email: zhang.zheng@zte.com.cn 582 Xianxian Dai 583 ZTE Corporation 584 No.50 Software Avenue,Yuhuatai District 585 Nanjing, Jiangsu Province 210012 586 China 588 Email: Dai.xianxian@zte.com.cn