idnits 2.17.1 draft-hu-lsr-ospf-srv6-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 : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 15 instances of too long lines in the document, the longest one being 11 characters in excess of 72. ** The abstract seems to contain references ([I-D.li-ospf-ospfv3-srv6-extensions]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (October 22, 2018) is 2012 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 (-29) exists of draft-ietf-ospf-yang-17 == Outdated reference: A later version (-07) exists of draft-li-ospf-ospfv3-srv6-extensions-02 ** Obsolete normative reference: RFC 6536 (Obsoleted by RFC 8341) Summary: 4 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Z. Hu 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track K. Raza 5 Expires: April 25, 2019 Cisco Systems, Inc. 6 Y. Qu 7 J. Dong 8 Huawei Technologies 9 October 22, 2018 11 YANG Data Model for OSPF SRv6 12 draft-hu-lsr-ospf-srv6-yang-00 14 Abstract 16 This document defines a YANG data model that can be used to configure 17 and manage OSPF SRv6 [I-D.li-ospf-ospfv3-srv6-extensions]. 19 Requirements Language 21 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 22 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 23 document are to be interpreted as described in RFC 2119 [RFC2119]. 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on April 25, 2019. 42 Copyright Notice 44 Copyright (c) 2018 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (https://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 60 2. OSPF SRv6 . . . . . . . . . . . . . . . . . . . . . . . . . . 2 61 3. OSPF SRv6 configuration . . . . . . . . . . . . . . . . . . . 4 62 3.1. SRv6 activation . . . . . . . . . . . . . . . . . . . . . 4 63 3.2. IP Fast reroute . . . . . . . . . . . . . . . . . . . . . 4 64 4. OSPF SRv6 YANG Module . . . . . . . . . . . . . . . . . . . . 4 65 5. Security Considerations . . . . . . . . . . . . . . . . . . . 15 66 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 15 67 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 68 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 69 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 70 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 72 1. Overview 74 YANG[RFC6020][RFC7950] is a data definition language used to define 75 the contents of a conceptual data store that allows networked devices 76 to be managed using NETCONF[RFC6241]. YANG is proving relevant 77 beyond its initial confines, as bindings to other interfaces (e.g., 78 ReST) and encodings other than XML (e.g., JSON) are being defined. 79 Furthermore, YANG data models can be used as the basis for 80 implementation of other interfaces, such as CLI and programmatic 81 APIs. 83 This document defines a YANG data model that can be used to configure 84 and manage OSPF SRv6 and it is an augmentation to the OSPF YANG data 85 model. 87 2. OSPF SRv6 89 This document defines a model for OSPF SRv6 feature. It is an 90 augmentation of the OSPF base model. 92 The OSPF SRv6 YANG module requires support of OSPF base model 93 [I-D.ietf-ospf-yang] which defines basic OSPF configuration and 94 state. 96 The figure below describes the overall structure of the ospf-srv6 97 YANG module: 99 module: ietf-ospf-srv6 100 augment /rt:routing/rt:control-plane-protocols 101 /rt:control-plane-protocol/ospf:ospf: 102 +--rw srv6-cfg 103 +--rw enable? boolean 104 +--rw persistent-end-x-sid? boolean 105 augment /rt:routing/rt:control-plane-protocols 106 /rt:control-plane-protocol/ospf:ospf/ospf:areas 107 /ospf:area/ospf:interfaces/ospf:interface/ospf:fast-reroute: 108 +--rw srv6-ti-lfa {srv6-ti-lfa}? 109 +--rw enable? boolean 110 augment /rt:routing/rt:control-plane-protocols 111 /rt:control-plane-protocol/ospf:ospf/ospf:areas 112 /ospf:area/ospf:interfaces/ospf:interface/ospf:database 113 /ospf:link-scope-lsa-type/ospf:link-scope-lsas 114 /ospf:link-scope-lsa/ospf:version/ospf:ospfv3 115 /ospf:ospfv3/ospf:body/ospf:router-information: 116 +--ro srv6-capability 117 +--ro flags? bits 118 +--ro srv6-msd-value 119 +--ro max-segments-left? uint8 120 +--ro max-end-pop? uint8 121 +--ro max-t-insert? uint8 122 +--ro max-t-encap? uint8 123 +--ro max-end-d? uint8 124 augment /rt:routing/rt:control-plane-protocols 125 /rt:control-plane-protocol/ospf:ospf/ospf:areas 126 /ospf:area/ospf:interfaces/ospf:interface/ospf:database 127 /ospf:link-scope-lsa-type/ospf:link-scope-lsas 128 /ospf:link-scope-lsa/ospf:version/ospf:ospfv3 129 /ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-router/ 130 /ospfv3-e-lsa:e-router-tlvs/ospfv3-e-lsa:link-tlv 131 /ospfv3-e-lsa:sub-tlvs: 132 +--ro srv6-endx-sids-sub-tlv 133 +--ro endx-sid* [sid] 134 +--ro endpoint-func 135 | +--ro fuc-flags? uint8 136 | +--ro endpoint-func? identityref 137 | +--ro undefined-endpoint-func? uint16 138 +--ro sid-flags? uint8 139 +--ro sid-size? uint8 140 +--ro sid srv6-sid-value 141 +--ro neighbor-router-id? yang:dotted-quad 142 augment /rt:routing/rt:control-plane-protocols 143 /rt:control-plane-protocol/ospf:ospf/ospf:areas 144 /ospf:area/ospf:interfaces/ospf:interface 145 /ospf:database/ospf:link-scope-lsa-type 146 /ospf:link-scope-lsas/ospf:link-scope-lsa 147 /ospf:version/ospf:ospfv3/ospf:ospfv3/ospf:body 148 /ospf:router-information: 149 +--ro srv6-node-sids 150 +--ro srv6-node-sids* [sid] 151 +--ro endpoint-func 152 | +--ro fuc-flags? uint8 153 | +--ro endpoint-func? identityref 154 | +--ro undefined-endpoint-func? uint16 155 +--ro sid-flags? uint8 156 +--ro sid-size? uint8 157 +--ro sid srv6-sid-value 158 +--ro neighbor-router-id? yang:dotted-quad 160 3. OSPF SRv6 configuration 162 3.1. SRv6 activation 164 Activation of OSPF SRv6 is done by setting the "enable" leaf to true. 165 This triggers advertisement of SRv6 extensions based on the 166 configuration parameters that have been setup using the base SRv6 167 module. 169 3.2. IP Fast reroute 171 OSPF SRv6 model augments the fast-reroute container under interface. 172 It brings the ability to activate ipv6 TI-LFA (topology independent 173 LFA). 175 4. OSPF SRv6 YANG Module 177 file "ietf-ospf-srv6@2018-10-11.yang" 178 module ietf-ospf-srv6 { 179 namespace "urn:ietf:params:xml:ns:" 180 + "yang:ietf-ospf-srv6"; 181 prefix ospf-srv6; 183 import ietf-yang-types { 184 prefix "yang"; 185 } 187 import ietf-routing { 188 prefix "rt"; 189 } 191 import ietf-ospfv3-extended-lsa { 192 prefix "ospfv3-e-lsa"; 193 } 195 import ietf-ospf { 196 prefix "ospf"; 197 } 199 import iana-routing-types { 200 prefix "iana-rt-types"; 201 } 203 import ietf-inet-types { 204 prefix "inet"; 205 } 207 organization 208 "IETF OSPF - OSPF Working Group"; 210 contact 211 "WG List: <mailto:spring@ietf.org> 212 Zhibo Hu 213 <mailto:huzhibo@huawei.com> 214 Jiajia Dong 215 <mailto:dongjiajia@huawei.com> 216 "; 218 description 219 "The YANG module defines a generic configuration model for 220 Segment IPV6 routing OSPFv3 extensions common across all of the vendor 221 implementations."; 223 revision 2018-10-11 { 224 description 225 "Initial revision."; 226 reference "RFC XXXX"; 227 } 229 /* Identities */ 230 identity SRV6_END_FUNC_TYPE { 231 description 232 "Base identity type for srv6 endpoint function code points."; 233 } 235 identity SRV6_END_FUNC_NO_PSP_USP { 236 base "SRV6_END_FUNC_TYPE"; 237 description 238 "End (no PSP, no USP)."; 239 } 240 identity SRV6_END_FUNC_PSP { 241 base "SRV6_END_FUNC_TYPE"; 242 description 243 "End with PSP."; 244 } 246 identity SRV6_END_FUNC_USP { 247 base "SRV6_END_FUNC_TYPE"; 248 description 249 "END with USP."; 250 } 252 identity SRV6_END_FUNC_PSP_USP { 253 base "SRV6_END_FUNC_TYPE"; 254 description 255 "END with PSP & USP."; 256 } 258 identity SRV6_END_T_FUNC_NO_PSP_USP { 259 base "SRV6_END_FUNC_TYPE"; 260 description 261 "End.T (no PSP, no USP)."; 262 } 264 identity SRV6_END_T_FUNC_PSP { 265 base "SRV6_END_FUNC_TYPE"; 266 description 267 "End.T with PSP."; 268 } 270 identity SRV6_END_T_FUNC_USP { 271 base "SRV6_END_FUNC_TYPE"; 272 description 273 "End.T with USP."; 274 } 276 identity SRV6_END_T_FUNC_PSP_USP { 277 base "SRV6_END_FUNC_TYPE"; 278 description 279 "End.T with PSP & USP."; 280 } 282 identity SRV6_END_X_FUNC_NO_PSP_USP { 283 base "SRV6_END_FUNC_TYPE"; 284 description 285 "End.x (no PSP, no USP)."; 286 } 287 identity SRV6_END_X_FUNC_PSP { 288 base "SRV6_END_FUNC_TYPE"; 289 description 290 "End.x with PSP."; 291 } 293 identity SRV6_END_X_FUNC_USP { 294 base "SRV6_END_FUNC_TYPE"; 295 description 296 "End.x with USP."; 297 } 299 identity SRV6_END_X_FUNC_PSP_USP { 300 base "SRV6_END_FUNC_TYPE"; 301 description 302 "End.x with PSP & USP."; 303 } 305 identity SRV6_END_FUNC_DX6 { 306 base "SRV6_END_FUNC_TYPE"; 307 description 308 "End.DX6 function."; 309 } 311 identity SRV6_END_FUNC_DT6 { 312 base "SRV6_END_FUNC_TYPE"; 313 description 314 "End.DT6 function."; 315 } 317 identity SRV6_END_FUNC_OTP { 318 base "SRV6_END_FUNC_TYPE"; 319 description 320 "END.OTP ."; 321 } 323 /* typedef */ 324 typedef srv6-sid-value { 325 type inet:ipv6-address-no-zone; 326 description 327 "16 Octets encoded sid value."; 328 } 330 /* Features */ 331 feature srv6-ti-lfa { 332 description 333 "Enhance SRv6 FRR with ti-lfa 334 support"; 336 } 338 /* Groupings */ 339 grouping srv6-msd { 340 description 341 "means to advertise to advertise node/link specific values for 342 Maxium Sid Depths(MSD) of various types"; 343 container v6-max-value-srh { 344 description 345 "Maximum SRv6 SID Depths."; 346 leaf max-segments-left { 347 type uint8; 348 description 349 "The maximum value of 'SL' field in the SRH of a received packet."; 350 } 351 leaf max-end-pop { 352 type uint8; 353 description 354 "The maximum number of SIDS in the top SRH in an SRH stack to which 355 the router can apply 'PSP' or 'USP'."; 356 } 357 leaf max-t-insert { 358 type uint8; 359 description 360 "The maximum number of SIDs can be inserted as port of the 'T.insert' 361 behavior."; 362 } 363 leaf max-t-encap { 364 type uint8; 365 description 366 "The maximum number of SIDs can be included as part of the 'T.Encap' 367 behavior."; 368 } 369 leaf max-end-d { 370 type uint8; 371 description 372 "The maximum number of SIDs in an SRH when performing decapsulation 373 associated with 'End.Dx' functions (e.g., 'End.DX6' and 'End.DT6')."; 374 } 375 } 376 } 378 grouping srv6-capabilities { 379 description 380 "SRV6 capability grouping."; 381 container srv6-capability { 382 description 383 "SRv6 capability."; 385 leaf flags { 386 type bits { 387 bit e-flag { 388 position 0; 389 description 390 "If set, then router is able to 391 apply T.Encap operation as specified in 392 [filsfils-spring-srv6-network-programming]."; 393 } 394 bit o-flag { 395 position 1; 396 description 397 "If set, then the router is able to 398 use of the O-bit in the Segment Routing Header(SRH) 399 as defined in [draft-ietf-6man-segment-routing-header]."; 400 } 401 } 402 description 403 "Flags."; 404 } 406 container srv6-msd-value { 407 description 408 "Maximum SRv6 SID Depths."; 409 leaf max-segments-left { 410 type uint8; 411 description 412 "The maximum value of 'SL' field in the SRH of a received packet."; 413 } 414 leaf max-end-pop { 415 type uint8; 416 description 417 "The maximum number of SIDS in the top SRH in an SRH stack to which 418 the router can apply 'PSP' or 'USP'."; 419 } 420 leaf max-t-insert { 421 type uint8; 422 description 423 "The maximum number of SIDs can be inserted as port of the 'T.insert' 424 behavior."; 425 } 426 leaf max-t-encap { 427 type uint8; 428 description 429 "The maximum number of SIDs can be included as part of the 'T.Encap' 430 behavior."; 431 } 432 leaf max-end-d { 433 type uint8; 434 description 435 "The maximum number of SIDs in an SRH when performing decapsulation 436 associated with 'End.Dx' functions (e.g., 'End.DX6' and 'End.DT6')."; 437 } 438 } 439 } 440 } 442 grouping srv6-endpoint-func { 443 description 444 "This group defines srv6 endpoint function"; 445 container endpoint-func { 446 description 447 "Srv6 Endpoint function Descriptor."; 448 leaf fuc-flags { 449 type uint8; 450 description 451 "No function flags are currently being defined."; 452 } 453 leaf endpoint-func { 454 type identityref { 455 base ospf-srv6:SRV6_END_FUNC_TYPE; 456 } 457 description 458 "The endpoint function."; 459 } 460 leaf undefined-endpoint-func { 461 type uint16; 462 description 463 "Unknown endpoint func value."; 464 } 465 } 466 } 468 grouping srv6-end-sid { 469 description 470 "SRv6 Segment Identifier(SID) with Endpoint functions."; 471 leaf flags { 472 type uint8; 473 description 474 "NO flags are currently being defined."; 475 } 477 uses srv6-endpoint-func; 479 leaf sid { 480 type srv6-sid-value; 481 description 482 "SRV6 sid value."; 483 } 484 // sub-sub-tlvs not yet defined 485 } 487 grouping srv6-node-sid { 488 description 489 "This group defines srv6 node sid tlv."; 490 uses srv6-endpoint-func; 492 leaf sid-flags { 493 type uint8; 494 description 495 "NO sid flags are currently being defined."; 496 } 498 leaf sid-size { 499 type uint8; 500 description 501 "Number of bits in the SID field"; 502 } 504 leaf sid { 505 type srv6-sid-value; 506 description 507 "SRV6 sid value."; 508 } 510 leaf neighbor-router-id { 511 type yang:dotted-quad; 512 description 513 "Neighbor router ID.This is only 514 used on LAN adjacencies."; 515 } 517 // sub-tlvs 518 } 520 grouping srv6-endx-sid { 521 description 522 "SRv6 sid associated with an adjacency."; 524 uses srv6-endpoint-func; 526 leaf sid-flags { 527 type uint8; 528 description 529 "NO sid flags are currently being defined."; 530 } 532 leaf sid-size { 533 type uint8; 534 description 535 "Number of bits in the SID field"; 536 } 538 leaf sid { 539 type srv6-sid-value; 540 description 541 "SRV6 sid value."; 542 } 544 leaf neighbor-router-id { 545 type yang:dotted-quad; 546 description 547 "Neighbor router ID.This is only 548 used on LAN adjacencies."; 549 } 551 // sub-tlvs 552 } 554 /* Cfg */ 555 augment "/rt:routing/" + 556 "rt:control-plane-protocols/rt:control-plane-protocol"+ 557 "/ospf:ospf" { 558 when "/rt:routing/rt:control-plane-protocols/"+ 559 "rt:control-plane-protocol/rt:type = 'ospf:ospfv3'" { 560 description 561 "This augment OSPF routing protocol when used"; 562 } 563 description 564 "This augments OSPF protocol configuration 565 with SRv6."; 567 container srv6-cfg{ 568 leaf enable{ 569 type boolean; 570 default "false"; 571 description 572 "Enables SRv6 573 protocol extensions."; 574 } 575 leaf persistent-end-x-sid{ 576 type boolean; 577 default "false"; 578 description 579 "Enable the persistent nature of End.X sid"; 580 } 581 description 582 "Configuration about OSPF segment-routing IPv6."; 583 } 584 } 586 augment "/rt:routing/" + 587 "rt:control-plane-protocols/rt:control-plane-protocol"+ 588 "/ospf:ospf/ospf:areas/ospf:area/ospf:interfaces/ospf:interface"+ 589 "/ospf:fast-reroute"{ 590 when "/rt:routing/rt:control-plane-protocols/"+ 591 "rt:control-plane-protocol/rt:type = 'ospf:ospfv3'"{ 592 description 593 "This augment OSPF routing protocol when used"; 594 } 595 description 596 "This augments OSPF IPFRR with IPV6 TILFA."; 598 container srv6-ti-lfa { 600 if-feature srv6-ti-lfa; 601 leaf enable { 602 type boolean; 603 description 604 "Enables SRv6 TI-LFA computation."; 605 } 607 description 608 "SRv6 TILFA configuration."; 609 } 610 } 612 /* Database */ 613 augment "/rt:routing/" 614 + "rt:control-plane-protocols/rt:control-plane-protocol/" 615 + "ospf:ospf/ospf:areas/ospf:area/" 616 + "ospf:database/" 617 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 618 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 619 + "ospf:ospfv3/ospf:body/ospf:router-information" { 620 when "/rt:routing/rt:control-plane-protocols/"+ 621 "rt:control-plane-protocol/rt:type = 'ospf:ospfv3'" { 623 description 624 "This augment OSPFv3 routing protocol when used"; 625 } 626 description 627 "This augments OSPFv3 protocol router capability."; 628 uses srv6-capabilities; 629 } 631 augment "/rt:routing/" 632 + "rt:control-plane-protocols/rt:control-plane-protocol/" 633 + "ospf:ospf/ospf:areas/ospf:area/" 634 + "ospf:database/" 635 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 636 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 637 + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-router/" 638 + "ospfv3-e-lsa:e-router-tlvs/ospfv3-e-lsa:link-tlv/" 639 + "ospfv3-e-lsa:sub-tlvs" { 640 when "/rt:routing/rt:control-plane-protocols/"+ 641 "rt:control-plane-protocol/rt:type = 'ospf:ospfv3'" { 642 } 643 description 644 "This augments OSPFv3 protocol neighbor."; 645 container srv6-endx-sids-sub-tlv { 646 description 647 "This defines svr6 end-x sids for the adjacency."; 648 list endx-sid { 649 key "sid"; 650 uses srv6-endx-sid; 651 description 652 "List of end-x sids."; 653 } 654 } 655 } 657 augment "/rt:routing/" 658 + "rt:control-plane-protocols/rt:control-plane-protocol/" 659 + "ospf:ospf/ospf:areas/ospf:area/" 660 + "ospf:database/" 661 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 662 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 663 + "ospf:ospfv3/ospf:body/ospf:router-information" { 664 when "/rt:routing/rt:control-plane-protocols/"+ 665 "rt:control-plane-protocol/rt:type = 'ospf:ospfv3'" { 666 description 667 "This augment OSPFv3 routing protocol when used."; 668 } 669 description 670 "This augment OSPFv3 routing protocol when used"; 672 container srv6-node-sids { 673 description 674 "This defines srv6 node sid tlvs."; 675 list srv6-node-sids { 676 key "sid"; 677 uses srv6-node-sid; 678 description 679 "List of srv6 node sids."; 680 } 681 } 682 } 683 /* Notifications */ 684 } 685 687 5. Security Considerations 689 Configuration and state data defined in this document are designed to 690 be accessed via the NETCONF protocol [RFC6241]. 692 As OSPF is an IGP protocol (critical piece of the network), ensuring 693 stability and security of the protocol is mandatory for the network 694 service. 696 Authors recommends to implement NETCONF access control model 697 ([RFC6536]) to restrict access to all or part of the configuration to 698 specific users. 700 6. Contributors 702 TBD. 704 7. Acknowledgements 706 TBD. 708 8. IANA Considerations 710 The IANA is requested to assign two new URIs from the IETF XML 711 registry ([RFC3688]). Authors are suggesting the following URI: 713 URI: urn:ietf:params:xml:ns:yang:ietf-ospf-srv6 714 Registrant Contact: The IESG. 715 XML: N/A, the requested URI is an XML namespace 717 This document also requests one new YANG module name in the YANG 718 Module Names registry ([RFC6020]) with the following suggestion : 720 name: ietf-isis-srv6 721 namespace: urn:ietf:params:xml:ns:yang:ietf-ospf-srv6 prefix: ospf-srv6 722 reference: RFC XXXX 724 9. References 726 [I-D.ietf-ospf-yang] 727 Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, 728 "YANG Data Model for OSPF Protocol", draft-ietf-ospf- 729 yang-17 (work in progress), September 2018. 731 [I-D.li-ospf-ospfv3-srv6-extensions] 732 Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak, 733 "OSPFv3 Extensions for SRv6", draft-li-ospf- 734 ospfv3-srv6-extensions-02 (work in progress), September 735 2018. 737 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 738 Requirement Levels", BCP 14, RFC 2119, 739 DOI 10.17487/RFC2119, March 1997, 740 . 742 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 743 DOI 10.17487/RFC3688, January 2004, 744 . 746 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 747 the Network Configuration Protocol (NETCONF)", RFC 6020, 748 DOI 10.17487/RFC6020, October 2010, 749 . 751 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 752 and A. Bierman, Ed., "Network Configuration Protocol 753 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 754 . 756 [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration 757 Protocol (NETCONF) Access Control Model", RFC 6536, 758 DOI 10.17487/RFC6536, March 2012, 759 . 761 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 762 RFC 7950, DOI 10.17487/RFC7950, August 2016, 763 . 765 Authors' Addresses 767 Zhibo Hu 768 Huawei Technologies 769 Huawei Bld., No.156 Beiqing Rd. 770 Beijing 100095 771 China 773 Email: huzhibo@huawei.com 775 Kamran Raza 776 Cisco Systems, Inc. 777 2000 Innovation Drive 778 Kanata, ON K2K-3E8 779 CA 781 Email: skraza@cisco.com 783 Yingzhen Qu 784 Huawei Technologies 785 Huawei Bld., No.156 Beiqing Rd. 786 Beijing 100095 787 China 789 Email: yingzhen.qu@huawei.com 791 Jiajia Dong 792 Huawei Technologies 793 Huawei Bld., No.156 Beiqing Rd. 794 Beijing 100095 795 China 797 Email: dongjiajia@huawei.com