idnits 2.17.00 (12 Aug 2021) /tmp/idnits64643/draft-ietf-lsr-ospfv3-extended-lsa-yang-10.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 document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (6 March 2022) is 69 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) ** Obsolete normative reference: RFC 6536 (Obsoleted by RFC 8341) ** Obsolete normative reference: RFC 8022 (Obsoleted by RFC 8349) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet A. Lindem 3 Internet-Draft Cisco Systems 4 Intended status: Standards Track S. Palani 5 Expires: 7 September 2022 Microsoft 6 Y. Qu 7 Futurewei 8 6 March 2022 10 YANG Model for OSPFv3 Extended LSAs 11 draft-ietf-lsr-ospfv3-extended-lsa-yang-10 13 Abstract 15 This document defines a YANG data model augmenting the IETF OSPF YANG 16 model to provide support for OSPFv3 Link State Advertisement (LSA) 17 Extensibility as defined in RFC 8362. OSPFv3 Extended LSAs provide 18 extensible TLV-based LSAs for the base LSA types defined in RFC 5340. 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 7 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. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 54 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 55 2. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . . . 3 56 3. OSPFv3 Extended LSAs . . . . . . . . . . . . . . . . . . . . 3 57 4. OSPFv3 Extended LSA Yang Module . . . . . . . . . . . . . . . 8 58 5. Security Considerations . . . . . . . . . . . . . . . . . . . 25 59 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 26 60 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 26 61 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 27 62 8.1. Normative References . . . . . . . . . . . . . . . . . . 27 63 8.2. Informative References . . . . . . . . . . . . . . . . . 28 64 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 28 66 1. Overview 68 YANG [RFC7950] is a data definition language used to define the 69 contents of a conceptual data store that allows networked devices to 70 be managed using NETCONF [RFC6241]. YANG is proving relevant beyond 71 its initial confines, as bindings to other interfaces (e.g., ReST) 72 and encodings other than XML (e.g., JSON) are being defined. 73 Furthermore, YANG data models can be used as the basis for 74 implementation of other interfaces, such as CLI and programmatic 75 APIs. 77 This document defines a YANG data model augmenting the IETF OSPF YANG 78 model [I-D.ietf-ospf-yang], which itself augments [RFC8349], to 79 provide support for configuration and operational state for OSPFv3 80 Extended LSAs as defined in [RFC8362]. 82 The YANG modules in this document conform to the Network Management 83 Datastore Architecture (NMDA) [RFC8342]. 85 1.1. Requirements Language 87 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 88 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 89 document are to be interpreted as described in [RFC2119] [RFC8174]. 91 2. Tree Diagrams 93 This document uses the graphical representation of data models 94 defined in [RFC8340]. 96 3. OSPFv3 Extended LSAs 98 This document defines a model for the OSPFv3 Extended LSA feature. 99 It is an augmentation of the OSPF base model provided support for 100 OSPFv3 Link State Advertisement (LSA) Extensibility [RFC8362]. 101 OSPFv3 Extended LSAs provide extensible TLV-based LSAs for the base 102 LSA types defined in [RFC5340]. 104 The OSPFv3 Extended LSA YANG module requires support for the OSPF 105 base model[I-D.ietf-ospf-yang] which defines basic OSPF configuration 106 and state. The OSPF YANG model augments the ietf-routing YANG model 107 defined in [RFC8022]. The augmentations defined in the ietf-ospfv3- 108 extended-lsa YANG model will provide global configuration, area 109 configuration, and addition of OSPFv3 Extended LSAs to the Link State 110 Database (LSDB) operational state. 112 module: ietf-ospfv3-extended-lsa 113 augment /rt:routing/rt:control-plane-protocols 114 /rt:control-plane-protocol/ospf:ospf: 115 +--rw extended-lsa-support? boolean 116 augment /rt:routing/rt:control-plane-protocols 117 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area: 118 +--rw extended-lsa-support? boolean 119 augment /rt:routing/rt:control-plane-protocols 120 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area 121 /ospf:interfaces/ospf:interface/ospf:database 122 /ospf:link-scope-lsa-type/ospf:link-scope-lsas 123 /ospf:link-scope-lsa/ospf:version/ospf:ospfv3 124 /ospf:ospfv3/ospf:body: 125 +--ro e-link 126 +--ro rtr-priority? uint8 127 +--ro lsa-options 128 | +--ro lsa-options* identityref 129 +--ro e-link-tlvs* [] 130 +--ro unknown-tlv 131 | +--ro type? uint16 132 | +--ro length? uint16 133 | +--ro value? yang:hex-string 134 +--ro intra-prefix-tlv 135 | +--ro intra-prefix-tlv-length? uint16 136 | +--ro metric? rt-types:uint24 137 | +--ro prefix? inet:ip-prefix 138 | +--ro prefix-options 139 | | +--ro prefix-options* identityref 140 | +--ro prefix-length? uint8 141 | +--ro sub-tlvs* [] 142 | +--ro unknown-sub-tlv 143 | +--ro type? uint16 144 | +--ro length? uint16 145 | +--ro value? yang:hex-string 146 +--ro ipv6-link-local-tlv 147 | +--ro ipv6-link-local-tlv-length? uint16 148 | +--ro link-local-address? inet:ipv6-address 149 | +--ro sub-tlvs* [] 150 | +--ro unknown-sub-tlv 151 | +--ro type? uint16 152 | +--ro length? uint16 153 | +--ro value? yang:hex-string 154 +--ro ipv4-link-local-tlv 155 +--ro ipv4-link-local-tlv-length? uint16 156 +--ro link-local-address? inet:ipv4-address 157 +--ro sub-tlvs* [] 158 +--ro unknown-sub-tlv 159 +--ro type? uint16 160 +--ro length? uint16 161 +--ro value? yang:hex-string 162 augment /rt:routing/rt:control-plane-protocols 163 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area 164 /ospf:database/ospf:area-scope-lsa-type 165 /ospf:area-scope-lsas/ospf:area-scope-lsa 166 /ospf:version/ospf:ospfv3/ospf:ospfv3/ospf:body: 167 +--ro e-router 168 | +--ro router-bits 169 | | +--ro rtr-lsa-bits* identityref 170 | +--ro lsa-options 171 | | +--ro lsa-options* identityref 172 | +--ro e-router-tlvs* [] 173 | +--ro unknown-tlv 174 | | +--ro type? uint16 175 | | +--ro length? uint16 176 | | +--ro value? yang:hex-string 177 | +--ro link-tlv 178 | +--ro link-tlv-length? uint16 179 | +--ro interface-id? uint32 180 | +--ro neighbor-interface-id? uint32 181 | +--ro neighbor-router-id? rt-types:router-id 182 | +--ro type? uint8 183 | +--ro metric? uint16 184 | +--ro sub-tlvs* [] 185 | +--ro unknown-sub-tlv 186 | +--ro type? uint16 187 | +--ro length? uint16 188 | +--ro value? yang:hex-string 189 +--ro e-network 190 | +--ro lsa-options 191 | | +--ro lsa-options* identityref 192 | +--ro e-network-tlvs* [] 193 | +--ro unknown--tlv 194 | | +--ro type? uint16 195 | | +--ro length? uint16 196 | | +--ro value? yang:hex-string 197 | +--ro attached-router-tlv 198 | +--ro attached-router-tlv-length? uint16 199 | +--ro Adjacent-neighbor-router-id* rt-types:router-id 200 | +--ro sub-tlvs* [] 201 | +--ro unknown-sub-tlv 202 | +--ro type? uint16 203 | +--ro length? uint16 204 | +--ro value? yang:hex-string 205 +--ro e-inter-area-prefix 206 | +--ro e-inter-prefix-tlvs* [] 207 | +--ro unknown--tlv 208 | | +--ro type? uint16 209 | | +--ro length? uint16 210 | | +--ro value? yang:hex-string 211 | +--ro inter-prefix-tlv 212 | +--ro inter-prefix-tlv-length? uint16 213 | +--ro metric? rt-types:uint24 214 | +--ro prefix? inet:ip-prefix 215 | +--ro prefix-options 216 | | +--ro prefix-options* identityref 217 | +--ro prefix-length? uint8 218 | +--ro sub-tlvs* [] 219 | +--ro unknown-sub-tlv 220 | +--ro type? uint16 221 | +--ro length? uint16 222 | +--ro value? yang:hex-string 223 +--ro e-inter-area-router 224 | +--ro e-inter-router-tlvs* [] 225 | +--ro unknown-tlv 226 | | +--ro type? uint16 227 | | +--ro length? uint16 228 | | +--ro value? yang:hex-string 229 | +--ro inter-router-tlv 230 | +--ro inter-router-tlv-length? uint16 231 | +--ro router-bits 232 | | +--ro rtr-lsa-bits* identityref 233 | +--ro lsa-options 234 | | +--ro lsa-options* identityref 235 | +--ro metric? rt-types:uint24 236 | +--ro destination-router-id? rt-types:router-id 237 | +--ro sub-tlvs* [] 238 | +--ro unknown-sub-tlv 239 | +--ro type? uint16 240 | +--ro length? uint16 241 | +--ro value? yang:hex-string 242 +--ro e-intra-area-prefix 243 +--ro referenced-ls-type? uint16 244 +--ro referenced-link-state-id? uint32 245 +--ro referenced-adv-router? rt-types:router-id 246 +--ro e-intra-prefix-tlvs* [] 247 +--ro unknown-tlv 248 | +--ro type? uint16 249 | +--ro length? uint16 250 | +--ro value? yang:hex-string 251 +--ro intra-prefix-tlv 252 +--ro intra-prefix-tlv-length? uint16 253 +--ro metric? rt-types:uint24 254 +--ro prefix? inet:ip-prefix 255 +--ro prefix-options 256 | +--ro prefix-options* identityref 257 +--ro prefix-length? uint8 258 +--ro sub-tlvs* [] 259 +--ro unknown-sub-tlv 260 +--ro type? uint16 261 +--ro length? uint16 262 +--ro value? yang:hex-string 263 augment /rt:routing/rt:control-plane-protocols 264 /rt:control-plane-protocol/ospf:ospf/ospf:database 265 /ospf:as-scope-lsa-type/ospf:as-scope-lsas 266 /ospf:as-scope-lsa/ospf:version/ospf:ospfv3 267 /ospf:ospfv3/ospf:body: 268 +--ro e-as-external 269 | +--ro e-external-tlvs* [] 270 | +--ro unknown-tlv 271 | | +--ro type? uint16 272 | | +--ro length? uint16 273 | | +--ro value? yang:hex-string 274 | +--ro external-prefix-tlv 275 | +--ro external-prefix-tlv-length? uint16 276 | +--ro flags 277 | | +--ro ospfv3-e-external-prefix-bits* identityref 278 | +--ro metric? rt-types:uint24 279 | +--ro prefix? inet:ip-prefix 280 | +--ro prefix-options 281 | | +--ro prefix-options* identityref 282 | +--ro prefix-length? uint8 283 | +--ro sub-tlvs* [] 284 | +--ro unknown-sub-tlv 285 | | +--ro type? uint16 286 | | +--ro length? uint16 287 | | +--ro value? yang:hex-string 288 | +--ro ipv6-fwd-addr-sub-tlv 289 | | +--ro ipv6-fwd-addr-sub-tlv-length? uint16 290 | | +--ro forwarding-address? inet:ipv6-address 291 | +--ro ipv4-fwd-addr-sub-tlv 292 | | +--ro ipv4-fwd-addr-sub-tlv-length? uint16 293 | | +--ro forwarding-address? inet:ipv4-address 294 | +--ro route-tag-sub-tlv 295 | +--ro route-tag-sub-tlv-length? uint16 296 | +--ro route-tag? uint32 297 +--ro e-nssa 298 +--ro e-external-tlvs* [] 299 +--ro unknown-tlv 300 | +--ro type? uint16 301 | +--ro length? uint16 302 | +--ro value? yang:hex-string 303 +--ro external-prefix-tlv 304 +--ro external-prefix-tlv-length? uint16 305 +--ro flags 306 | +--ro ospfv3-e-external-prefix-bits* identityref 307 +--ro metric? rt-types:uint24 308 +--ro prefix? inet:ip-prefix 309 +--ro prefix-options 310 | +--ro prefix-options* identityref 311 +--ro prefix-length? uint8 312 +--ro sub-tlvs* [] 313 +--ro unknown-sub-tlv 314 | +--ro type? uint16 315 | +--ro length? uint16 316 | +--ro value? yang:hex-string 317 +--ro ipv6-fwd-addr-sub-tlv 318 | +--ro ipv6-fwd-addr-sub-tlv-length? uint16 319 | +--ro forwarding-address? inet:ipv6-address 320 +--ro ipv4-fwd-addr-sub-tlv 321 | +--ro ipv4-fwd-addr-sub-tlv-length? uint16 322 | +--ro forwarding-address? inet:ipv4-address 323 +--ro route-tag-sub-tlv 324 +--ro route-tag-sub-tlv-length? uint16 325 +--ro route-tag? uint32 327 4. OSPFv3 Extended LSA Yang Module 329 The following RFCs and drafts are not referenced in the document text 330 but are referenced in the ietf-ospfv3-extended-lsa.yang module: 331 [RFC6991], [RFC8294]. 333 file "ietf-ospfv3-extended-lsa@2022-03-06.yang" 334 module ietf-ospfv3-extended-lsa { 335 yang-version 1.1; 336 namespace 337 "urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa"; 339 prefix ospfv3-e-lsa; 341 import ietf-routing-types { 342 prefix "rt-types"; 343 reference "RFC 8294 - Common YANG Data Types for the 344 Routing Area"; 345 } 347 import ietf-inet-types { 348 prefix "inet"; 349 reference "RFC 6991 - Common YANG Data Types"; 350 } 352 import ietf-routing { 353 prefix "rt"; 354 reference "RFC 8349 - A YANG Data Model for Routing 355 Management (NMDA Version)"; 356 } 358 import ietf-ospf { 359 prefix "ospf"; 360 reference "RFC YYYY - A YANG Data Model for OSPF 361 Protocol"; 362 } 364 organization 365 "IETF LSR - Link State Routing Working Group"; 367 contact 368 "WG Web: 369 WG List: 371 Author: Acee Lindem 372 373 Author: Sharmila Palani 374 376 Author: Yingzhen Qu 377 "; 379 description 380 "This YANG module defines the configuration 381 and operational state for OSPFv3 Extended LSAs, which is 382 common across all of the vendor implementations. The 383 semantics and encodings for OSPFv3 Extended LSAs is 384 described in RFC 8362. 386 This YANG model conforms to the Network Management 387 Datastore Architecture (NMDA) as described in RFC 8342. 389 Copyright (c) 2022 IETF Trust and the persons identified as 390 authors of the code. All rights reserved. 392 Redistribution and use in source and binary forms, with or 393 without modification, is permitted pursuant to, and subject 394 to the license terms contained in, the Simplified BSD License 395 set forth in Section 4.c of the IETF Trust's Legal Provisions 396 Relating to IETF Documents 397 (http://trustee.ietf.org/license-info). 399 This version of this YANG module is part of RFC XXXX; 400 see the RFC itself for full legal notices."; 402 reference "RFC XXXX - YANG Model for OSPFv3 Extended LSAs"; 404 revision 2022-03-06 { 405 description 406 "Initial revision."; 407 reference 408 "RFC XXXX: A YANG Data Model for OSPFv3 Extended LSAs."; 409 } 411 /* 412 * OSPFv3 Extend LSA Type Identities 413 */ 414 identity ospfv3-e-router-lsa { 415 base ospf:ospfv3-lsa-type; 416 description 417 "OSPFv3 Extended Router LSA - Type 0xA021"; 418 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 419 Extensibility, Section 4.1"; 420 } 422 identity ospfv3-e-network-lsa { 423 base ospf:ospfv3-lsa-type; 424 description 425 "OSPFv3 Extended Network LSA - Type 0xA022"; 426 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 427 Extensibility, Section 4.2"; 428 } 430 identity ospfv3-e-summary-lsa-type { 431 base ospf:ospfv3-lsa-type; 432 description 433 "OSPFv3 Extended Summary LSA types"; 434 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 435 Extensibility, Section 4.3 and Section 4.4"; 436 } 438 identity ospfv3-e-inter-area-prefix-lsa { 439 base ospfv3-e-summary-lsa-type; 440 description 441 "OSPFv3 Extended Inter-area Prefix LSA - Type 0xA023"; 442 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 443 Extensibility, Section 4.3"; 444 } 446 identity ospfv3-e-inter-area-router-lsa { 447 base ospfv3-e-summary-lsa-type; 448 description 449 "OSPFv3 Extended Inter-area Router LSA - Type 0xA024"; 450 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 451 Extensibility, Section 4.3"; 452 } 454 identity ospfv3-e-external-lsa-type { 455 base ospf:ospfv3-lsa-type; 456 description 457 "OSPFv3 Extended External LSA types"; 458 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 459 Extensibility, Section 4.5 and Section 4.6"; 460 } 462 identity ospfv3-e-as-external-lsa { 463 base ospfv3-e-external-lsa-type; 464 description 465 "OSPFv3 Extended AS-External LSA - Type 0xC025"; 466 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 467 Extensibility, Section 4.5"; 468 } 470 identity ospfv3-e-nssa-lsa { 471 base ospfv3-e-external-lsa-type; 472 description 473 "OSPFv3 Extended Not-So-Stubby-Area (NSSA) LSA - 474 Type 0xA027"; 475 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 476 Extensibility, Section 4.6"; 477 } 479 identity ospfv3-e-link-lsa { 480 base ospf:ospfv3-lsa-type; 481 description 482 "OSPFv3 Extended Link LSA - Type 0x8028"; 483 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 484 Extensibility, Section 4.7"; 485 } 487 identity ospfv3-e-intra-area-prefix-lsa { 488 base ospf:ospfv3-lsa-type; 489 description 490 "OSPFv3 Extended Intra-area Prefix LSA - Type 0xA029"; 491 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 492 Extensibility, Section 4.8"; 493 } 495 identity ospfv3-e-prefix-option { 496 description 497 "Base identity for OSPFv3 Prefix Options."; 498 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 499 Extensibility, Section 3.1"; 500 } 502 identity nu-bit { 503 base ospfv3-e-prefix-option; 504 description 505 "When set, the prefix should be excluded 506 from IPv6 unicast calculations."; 507 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 508 Extensibility, Section 3.1"; 509 } 511 identity la-bit { 512 base ospfv3-e-prefix-option; 513 description 514 "When set, the prefix is actually an IPv6 interface 515 address of the Advertising Router."; 516 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 517 Extensibility, Section 3.1"; 518 } 519 identity p-bit { 520 base ospfv3-e-prefix-option; 521 description 522 "When set, the NSSA area prefix should be 523 translated to an AS External LSA and advertised 524 by the translating NSSA Border Router."; 525 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 526 Extensibility, Section 3.1"; 527 } 529 identity dn-bit { 530 base ospfv3-e-prefix-option; 531 description 532 "When set, the inter-area-prefix LSA or 533 AS-external LSA prefix has been advertised as an 534 L3VPN prefix."; 535 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 536 Extensibility, Section 3.1"; 537 } 539 identity n-bit { 540 base ospfv3-e-prefix-option; 541 description 542 "When set, the prefix is a host address that identifies 543 the advertising router."; 544 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 545 Extensibility, Section 3.1"; 546 } 548 identity ospfv3-e-external-prefix-option { 549 description 550 "Base identity for OSPFv3 External Prefix Options."; 551 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 552 Extensibility, Section 3.6"; 553 } 555 identity e-bit { 556 base ospfv3-e-external-prefix-option; 557 description 558 "When set, the metric specified is a Type 2 559 external metric."; 560 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 561 Extensibility, Section 3.6"; 562 } 564 grouping unknown-sub-tlv { 565 description 566 "Unknown TLV grouping"; 568 container unknown-sub-tlv { 569 uses ospf:tlv; 570 description "Unknown External TLV Sub-TLV"; 571 } 572 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 573 Extensibility, Section 6.3"; 574 } 576 grouping ospfv3-lsa-prefix { 577 description 578 "OSPFv3 LSA prefix"; 580 leaf prefix { 581 type inet:ip-prefix; 582 description 583 "LSA Prefix"; 584 } 585 container prefix-options { 586 leaf-list prefix-options { 587 type identityref { 588 base ospfv3-e-prefix-option; 589 } 590 description 591 "OSPFv3 prefix option flag list. This list will 592 contain the identities for the OSPFv3 options 593 that are set for the OSPFv3 prefix."; 594 } 595 description "Prefix options."; 596 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 597 Extensibility, Section 3.1"; 598 } 600 leaf prefix-length { 601 type uint8 { 602 range "0..128"; 603 } 604 description "Prefix length."; 605 } 606 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 607 Extensibility, Section 3"; 608 } 610 grouping ipv6-fwd-addr-sub-tlv { 611 container ipv6-fwd-addr-sub-tlv { 612 description 613 "IPv6 Forwarding Address Sub-TLV"; 614 leaf ipv6-fwd-addr-sub-tlv-length { 615 type uint16; 616 description 617 "IPv6 Forwarding Addrss Sub-TLV Length - 16 618 for IPv6 address"; 619 } 620 leaf forwarding-address { 621 type inet:ipv6-address; 622 description 623 "Forwarding address"; 624 } 625 } 626 description 627 "IPv6 Forwarding Address Sub-TLV grouping"; 628 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 629 Extensibility, Section 3.10"; 630 } 632 grouping ipv4-fwd-addr-sub-tlv { 633 container ipv4-fwd-addr-sub-tlv { 634 description 635 "IPv4 Forwarding Address Sub-TLV"; 636 leaf ipv4-fwd-addr-sub-tlv-length { 637 type uint16; 638 description 639 "IPv4 Forwarding Addrss Sub-TLV Length - 4 640 for IPv4 address"; 641 } 642 leaf forwarding-address { 643 type inet:ipv4-address; 644 description 645 "Forwarding address"; 646 } 647 } 648 description 649 "IPv4 Forwarding Address Sub-TLV grouping"; 650 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 651 Extensibility, Section 3.11"; 652 } 654 grouping route-tag-sub-tlv { 655 container route-tag-sub-tlv { 656 description 657 "Route Tag Sub-TLV"; 658 leaf route-tag-sub-tlv-length { 659 type uint16; 660 description 661 "Route Tag Sub-TLV Length - 4 for 32-bit tag"; 662 } 663 leaf route-tag { 664 type uint32; 665 description 666 "Route Tag"; 667 } 668 } 669 description 670 "Route Tag Sub-TLV grouping"; 671 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 672 Extensibility, Section 3.12"; 673 } 675 grouping external-prefix-tlv { 676 container external-prefix-tlv { 677 description "External Prefix LSA TLV"; 678 leaf external-prefix-tlv-length { 679 type uint16; 680 description 681 "External Prefix TLV Length - Variable dependent 682 on sub-TLVs"; 683 } 684 container flags { 685 leaf-list ospfv3-e-external-prefix-bits { 686 type identityref { 687 base ospfv3-e-external-prefix-option; 688 } 689 description "OSPFv3 external-prefix TLV bits list."; 690 } 691 description "External Prefix Flags"; 692 } 693 leaf metric { 694 type rt-types:uint24; 695 description "External Prefix Metric"; 696 } 697 uses ospfv3-lsa-prefix; 698 list sub-tlvs { 699 description "External Prefix TLV Sub-TLVs"; 700 uses unknown-sub-tlv; 701 uses ipv6-fwd-addr-sub-tlv; 702 uses ipv4-fwd-addr-sub-tlv; 703 uses route-tag-sub-tlv; 704 } 705 } 706 description "External Prefix TLV Grouping"; 707 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 708 Extensibility, Section 3.6"; 709 } 711 grouping intra-area-prefix-tlv { 712 container intra-prefix-tlv { 713 description "Intra-Area Prefix LSA TLV"; 714 leaf intra-prefix-tlv-length { 715 type uint16; 716 description 717 "Intra-Area Prefix TLV Length - Variable dependent 718 on sub-TLVs"; 719 } 720 leaf metric { 721 type rt-types:uint24; 722 description "Intra-Area Prefix Metric"; 723 } 724 uses ospfv3-lsa-prefix; 725 list sub-tlvs { 726 description "Intra-Area Prefix TLV Sub-TLVs"; 727 uses unknown-sub-tlv; 728 } 729 } 730 description "Intra-Area Prefix TLV Grouping"; 731 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 732 Extensibility, Section 3.4"; 733 } 735 grouping ipv6-link-local-tlv { 736 container ipv6-link-local-tlv { 737 description "IPv6 Link-Local LSA TLV"; 738 leaf ipv6-link-local-tlv-length { 739 type uint16; 740 description 741 "IPv6 Link-Local TLV Length - Variable dependent 742 on sub-TLVs"; 743 } 744 leaf link-local-address { 745 type inet:ipv6-address; 746 description 747 "IPv6 Link Local address"; 748 } 749 list sub-tlvs { 750 description "IPv6 Link Local TLV Sub-TLVs"; 751 uses unknown-sub-tlv; 752 } 753 } 754 description "IPv6 Link-Local TLV Grouping"; 755 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 756 Extensibility, Section 3.8"; 757 } 759 grouping ipv4-link-local-tlv { 760 container ipv4-link-local-tlv { 761 description "IPv4 Link-Local LSA TLV"; 762 leaf ipv4-link-local-tlv-length { 763 type uint16; 764 description 765 "IPv4 Link-Local TLV Length - Variable dependent 766 on sub-TLVs"; 767 } 768 leaf link-local-address { 769 type inet:ipv4-address; 770 description 771 "IPv4 Link Local address"; 772 } 773 list sub-tlvs { 774 description "IPv4 Link Local TLV Sub-TLVs"; 775 uses unknown-sub-tlv; 776 } 777 } 778 description "IPv4 Link-Local TLV Grouping"; 779 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 780 Extensibility, Section 3.9"; 781 } 783 grouping ospfv3-e-lsa-area { 784 description "Area scope OSPFv3 Extended LSAs."; 785 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 786 Extensibility, Section 4"; 788 container e-router { 789 when "../../ospf:header/ospf:type = " 790 + "'ospfv3-e-lsa:ospfv3-e-router-lsa'" { 791 description "Only valid for OSPFv3 Extended-Router LSAs"; 792 } 793 description "OSPv3 Extended Router LSA"; 794 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 795 Extensibility, Section 4.1"; 796 uses ospf:ospf-router-lsa-bits; 797 uses ospf:ospfv3-lsa-options; 799 list e-router-tlvs { 800 description "E-Router LSA TLVs"; 801 container unknown-tlv { 802 uses ospf:tlv; 803 description "Unknown E-Router TLV"; 804 } 805 container link-tlv { 806 description "E-Router LSA TLV"; 807 leaf link-tlv-length { 808 type uint16; 809 description 810 "Link TLV Length - Variable dependent on sub-TLVs"; 811 } 812 leaf interface-id { 813 type uint32; 814 description "Interface ID for link"; 815 } 816 leaf neighbor-interface-id { 817 type uint32; 818 description "Neighbor's Interface ID for link"; 819 } 820 leaf neighbor-router-id { 821 type rt-types:router-id; 822 description "Neighbor's Router ID for link"; 823 } 824 leaf type { 825 type ospf:router-link-type; 826 description "Link type: 1 - Point-to-Point Link 827 2 - Transit Network Link 828 3 - Stub Network Link Link 829 4 - Virtual Link"; 830 } 831 leaf metric { 832 type uint16; 833 description "Link Metric"; 834 } 835 list sub-tlvs { 836 description "Link TLV Sub-TLVs"; 837 uses unknown-sub-tlv; 838 } 839 } 840 } 841 } 843 container e-network { 844 when "../../ospf:header/ospf:type = " 845 + "'ospfv3-e-lsa:ospfv3-e-network-lsa'" { 846 description 847 "Only applies to E-Network LSAs."; 848 } 849 description "Extended Network LSA"; 850 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 851 Extensibility, Section 4.2"; 852 uses ospf:ospfv3-lsa-options; 853 list e-network-tlvs { 854 description "E-Network LSA TLVs"; 855 container unknown--tlv { 856 uses ospf:tlv; 857 description "Unknown E-Network TLV"; 858 } 859 container attached-router-tlv { 860 description "Attached Router TLV"; 861 leaf attached-router-tlv-length { 862 type uint16; 863 description 864 "Attached Router TLV Length - Variable dependent 865 on sub-TLVs"; 866 } 867 leaf-list Adjacent-neighbor-router-id { 868 type rt-types:router-id; 869 description "Adjacent Neighbor's Router ID"; 870 } 871 list sub-tlvs { 872 description "Attached Router TLV Sub-TLVs"; 873 uses unknown-sub-tlv; 874 } 875 } 876 } 877 } 879 container e-inter-area-prefix { 880 when "../../ospf:header/ospf:type = " 881 + "'ospfv3-e-lsa:ospfv3-e-inter-area-prefix-lsa'" { 882 description 883 "Only applies to E-Inter-Area-Prefix LSAs."; 884 } 885 description "Extended Inter-Area Prefix LSA"; 886 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 887 Extensibility, Section 4.3"; 888 list e-inter-prefix-tlvs { 889 description "E-Inter-Area-Prefix LSA TLVs"; 890 container unknown--tlv { 891 uses ospf:tlv; 892 description "Unknown E-Inter-Area-Prefix TLV"; 893 } 894 container inter-prefix-tlv { 895 description "Unknown E-Inter-Area-Prefix LSA TLV"; 896 leaf inter-prefix-tlv-length { 897 type uint16; 898 description 899 "Inter-Area-Prefix TLV Length - Variable dependent 900 on sub-TLVs"; 901 } 902 leaf metric { 903 type rt-types:uint24; 904 description "Inter-Area Prefix Metric"; 905 } 906 uses ospfv3-lsa-prefix; 907 list sub-tlvs { 908 description "Inter-Area Prefix TLV Sub-TLVs"; 909 uses unknown-sub-tlv; 910 } 911 } 912 } 913 } 915 container e-inter-area-router { 916 when "../../ospf:header/ospf:type = " 917 + "'ospfv3-e-lsa:ospfv3-e-inter-area-router-lsa'" { 918 description 919 "Only applies to E-Inter-Area-Router LSAs."; 920 } 921 description "Extended Inter-Area Router LSA"; 922 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 923 Extensibility, Section 4.4"; 924 list e-inter-router-tlvs { 925 description "E-Inter-Area-Router LSA TLVs"; 926 container unknown-tlv { 927 uses ospf:tlv; 928 description "Unknown E-Inter-Area-Router TLV"; 929 } 930 container inter-router-tlv { 931 description "Unknown E-Inter-Area-Router LSA TLV"; 932 leaf inter-router-tlv-length { 933 type uint16; 934 description 935 "Inter-Area-Router TLV Length - Variable dependent 936 on sub-TLVs"; 937 } 938 uses ospf:ospf-router-lsa-bits; 939 uses ospf:ospfv3-lsa-options; 940 leaf metric { 941 type rt-types:uint24; 942 description "Inter-Area Router Metric"; 943 } 944 leaf destination-router-id { 945 type rt-types:router-id; 946 description "Destination Router ID"; 947 } 948 list sub-tlvs { 949 description "Inter-Area Router TLV Sub-TLVs"; 950 uses unknown-sub-tlv; 951 } 953 } 954 } 955 } 957 container e-intra-area-prefix { 958 when "../../ospf:header/ospf:type = " 959 + "'ospfv3-e-lsa:ospfv3-e-intra-area-prefix-lsa'" { 960 description 961 "Only applies to E-Intra-Area-Prefix LSAs."; 962 } 963 description "E-Intra-Area-Prefix LSA"; 964 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 965 Extensibility, Section 4.8"; 966 leaf referenced-ls-type { 967 type uint16; 968 description "Referenced Link State type"; 969 } 970 leaf referenced-link-state-id { 971 type uint32; 972 description 973 "Referenced Link State ID"; 974 } 975 leaf referenced-adv-router { 976 type rt-types:router-id; 977 description 978 "Referenced Advertising Router"; 979 } 980 list e-intra-prefix-tlvs { 981 description "E-Intra-Area-Prefix LSA TLVs"; 982 container unknown-tlv { 983 uses ospf:tlv; 984 description "Unknown E-Intra-Area-Prefix TLV"; 985 } 986 uses intra-area-prefix-tlv; 987 } 988 } 989 } 991 grouping ospfv3-e-lsa-as { 992 description "AS scope OSPFv3 Extended LSAs."; 993 container e-as-external { 994 when "../../ospf:header/ospf:type = " 995 + "'ospfv3-e-lsa:ospfv3-e-as-external-lsa'" { 996 description 997 "Only applies to E-AS-external LSAs."; 998 } 999 list e-external-tlvs { 1000 description "E-External LSA TLVs"; 1001 container unknown-tlv { 1002 uses ospf:tlv; 1003 description "Unknown E-External TLV"; 1004 } 1005 uses external-prefix-tlv; 1006 } 1007 description "E-AS-External LSA."; 1008 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1009 Extensibility, Section 4.5"; 1010 } 1012 container e-nssa { 1013 when "../../ospf:header/ospf:type = " 1014 + "'ospfv3-e-lsa:ospfv3-e-nssa-lsa'" { 1015 description 1016 "Only applies to E-NSSA LSAs."; 1017 } 1018 list e-external-tlvs { 1019 description "E-NSSA LSA TLVs"; 1020 container unknown-tlv { 1021 uses ospf:tlv; 1022 description "Unknown E-External TLV"; 1023 } 1024 uses external-prefix-tlv; 1025 } 1026 description "E-NSSA LSA."; 1027 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1028 Extensibility, Section 4.6"; 1029 } 1030 } 1032 grouping ospfv3-e-lsa-link { 1033 description "Link scope OSPFv3 Extended LSAs."; 1034 container e-link { 1035 when "../../ospf:header/ospf:type = " 1036 + "'ospfv3-e-lsa:ospfv3-e-link-lsa'" { 1037 description 1038 "Only applies to Extended Link LSAs."; 1039 } 1040 description "E-Link LSA"; 1041 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1042 Extensibility, Section 4.7"; 1043 leaf rtr-priority { 1044 type uint8; 1045 description "Router Priority for the interface."; 1046 } 1047 uses ospf:ospfv3-lsa-options; 1048 list e-link-tlvs { 1049 description "E-Link LSA TLVs"; 1050 container unknown-tlv { 1051 uses ospf:tlv; 1052 description "Unknown E-Link TLV"; 1053 } 1054 uses intra-area-prefix-tlv; 1055 uses ipv6-link-local-tlv; 1056 uses ipv4-link-local-tlv; 1057 } 1058 } 1059 } 1061 /* Configuration */ 1062 augment "/rt:routing/rt:control-plane-protocols" 1063 + "/rt:control-plane-protocol/ospf:ospf" { 1064 when "../rt:type = 'ospf:ospfv3'" { 1065 description 1066 "This augments the OSPFv3 routing protocol when used."; 1067 } 1068 description 1069 "This augments the OSPFv3 protocol configuration 1070 with extended LSA support."; 1071 leaf extended-lsa-support { 1072 type boolean; 1073 default false; 1074 description 1075 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1076 domain"; 1077 reference 1078 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1079 Extensibility, Appendix B - ExtendedLSASupport"; 1080 } 1081 } 1083 augment "/rt:routing/rt:control-plane-protocols/" 1084 + "rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area" { 1085 when "../../../rt:type = 'ospf:ospfv3'" { 1086 description 1087 "This augments the OSPFv3 area configuration 1088 when used."; 1089 } 1090 description 1091 "This augments the OSPFv3 protocol area 1092 configuration with extended LSA support."; 1093 leaf extended-lsa-support { 1094 type boolean; 1095 must "derived-from(../ospf:area-type,'stub-nssa-area') or " 1096 + "(current() = 'true') or " 1097 + "(../../../extended-lsa-support = 'false')" { 1098 description 1099 "For regular areas, i.e., areas where AS-scoped LSAs 1100 disabling AreaExtendedLSASupport for a regular 1101 OSPFv3 area (not a Stub or NSSA area) when 1102 ExtendedLSASupport is enabled is contradictory and 1103 is prohibited."; 1104 } 1105 description 1106 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1107 area. If not specified, Extended LSA support status 1108 is inherited from the instance level configuration."; 1109 reference 1110 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1111 Extensibility, Appendix B - AreaExtendedLSASupport"; 1112 } 1113 } 1115 /* 1116 * Link State Database (LSDB) Augmentations 1117 */ 1118 augment "/rt:routing/" 1119 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1120 + "ospf:ospf/ospf:areas/ospf:area/" 1121 + "ospf:interfaces/ospf:interface/ospf:database/" 1122 + "ospf:link-scope-lsa-type/ospf:link-scope-lsas/" 1123 + "ospf:link-scope-lsa/ospf:version/ospf:ospfv3/" 1124 + "ospf:ospfv3/ospf:body" { 1125 when "../../../../../../../../../../../" 1126 + "rt:type = 'ospf:ospfv3'" { 1127 description 1128 "This augmentation is only valid for OSPFv3."; 1129 } 1130 description 1131 "OSPFv3 Link-Scoped Extended LSAs"; 1133 uses ospfv3-e-lsa-link; 1134 } 1136 augment "/rt:routing/" 1137 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1138 + "ospf:ospf/ospf:areas/ospf:area/ospf:database/" 1139 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 1140 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 1141 + "ospf:ospfv3/ospf:body" { 1142 when "../../../../../../../../../" 1143 + "rt:type = 'ospf:ospfv3'" { 1144 description 1145 "This augmentation is only valid for OSPFv3."; 1146 } 1147 description 1148 "OSPFv3 Area-Scoped Extended LSAs"; 1150 uses ospfv3-e-lsa-area; 1151 } 1153 augment "/rt:routing/" 1154 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1155 + "ospf:ospf/ospf:database/" 1156 + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/" 1157 + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/" 1158 + "ospf:ospfv3/ospf:body" { 1159 when "../../../../../../../" 1160 + "rt:type = 'ospf:ospfv3'" { 1161 description 1162 "This augmentation is only valid for OSPFv3."; 1163 } 1164 description 1165 "OSPFv3 AS-Scoped Extended LSAs"; 1167 uses ospfv3-e-lsa-as; 1168 } 1169 } 1170 1172 5. Security Considerations 1174 The YANG modules specified in this document define a schema for data 1175 that is designed to be accessed via network management protocols such 1176 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 1177 is the secure transport layer, and the mandatory-to-implement secure 1178 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 1179 is HTTPS, and the mandatory-to-implement secure transport is TLS 1180 [RFC8446]. 1182 The NETCONF access control model [RFC6536] provides the means to 1183 restrict access for particular NETCONF or RESTCONF users to a pre- 1184 configured subset of all available NETCONF or RESTCONF protocol 1185 operations and content. 1187 There are a number of data nodes defined in ietf-ospfv3-extended- 1188 lsa.yang module that are writable/creatable/deletable (i.e., config 1189 true, which is the default). These data nodes may be considered 1190 sensitive or vulnerable in some network environments. Write 1191 operations (e.g., edit-config) to these data nodes without proper 1192 protection can have a negative effect on network operations. There 1193 are the subtrees and data nodes and their sensitivity/vlunerability: 1195 /ospf:ospf/extended-lsa-support 1197 /ospf:ospf/ospf:areas/ospf:area/extended-lsa-support - For OSPFv3 1198 Extended LSAs, the ability to disable OSPFv3 Extended LSA support 1199 result in a denial of service. 1201 Some of the readable data nodes in the ietf-ospfv3-extended-lsa.yang 1202 module may be considered sensitive or vulnerable in some network 1203 environments. It is thus important to control read access (e.g., via 1204 get, get-config, or notification) to these data nodes. The exposure 1205 of the Link State Database (LSDB) will expose the detailed topology 1206 of the network and information beyond the scope of OSPF router. This 1207 may be undesirable since both due to the fact that exposure may 1208 facilitate other attacks. Additionally, network operators may 1209 consider their topologies to be sensitive confidential data. 1211 6. IANA Considerations 1213 This document registers a URI in the IETF XML registry [RFC3688]. 1214 Following the format in [RFC3688], the following registration is 1215 requested to be made: 1217 URI: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1218 Registrant Contact: The IESG. 1219 XML: N/A, the requested URI is an XML namespace. 1221 This document registers a YANG module in the YANG Module Names 1222 registry [RFC6020]. 1224 name: ietf-ospfv3-extended-lsa 1225 namespace: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1226 prefix: ospfv3-e-lsa 1227 reference: RFC XXXX 1229 7. Acknowledgements 1231 This document was produced using Marshall Rose's xml2rfc tool. 1233 The YANG model was developed using the suite of YANG tools written 1234 and maintained by numerous authors. 1236 Thanks much to Tom Petch for his review and comments. 1238 8. References 1240 8.1. Normative References 1242 [I-D.ietf-ospf-yang] 1243 Yeung, D., Qu, Y., Zhang, J., Chen, I., and A. Lindem, 1244 "YANG Data Model for OSPF Protocol", Work in Progress, 1245 Internet-Draft, draft-ietf-ospf-yang-29, 17 October 2019, 1246 . 1249 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1250 Requirement Levels", BCP 14, RFC 2119, 1251 DOI 10.17487/RFC2119, March 1997, 1252 . 1254 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 1255 DOI 10.17487/RFC3688, January 2004, 1256 . 1258 [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF 1259 for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008, 1260 . 1262 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 1263 the Network Configuration Protocol (NETCONF)", RFC 6020, 1264 DOI 10.17487/RFC6020, October 2010, 1265 . 1267 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1268 and A. Bierman, Ed., "Network Configuration Protocol 1269 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1270 . 1272 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 1273 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 1274 . 1276 [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration 1277 Protocol (NETCONF) Access Control Model", RFC 6536, 1278 DOI 10.17487/RFC6536, March 2012, 1279 . 1281 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", 1282 RFC 6991, DOI 10.17487/RFC6991, July 2013, 1283 . 1285 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 1286 RFC 7950, DOI 10.17487/RFC7950, August 2016, 1287 . 1289 [RFC8022] Lhotka, L. and A. Lindem, "A YANG Data Model for Routing 1290 Management", RFC 8022, DOI 10.17487/RFC8022, November 1291 2016, . 1293 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 1294 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 1295 . 1297 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1298 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1299 May 2017, . 1301 [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, 1302 "Common YANG Data Types for the Routing Area", RFC 8294, 1303 DOI 10.17487/RFC8294, December 2017, 1304 . 1306 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 1307 and R. Wilton, "Network Management Datastore Architecture 1308 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 1309 . 1311 [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for 1312 Routing Management (NMDA Version)", RFC 8349, 1313 DOI 10.17487/RFC8349, March 2018, 1314 . 1316 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 1317 F. Baker, "OSPFv3 Link State Advertisement (LSA) 1318 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 1319 2018, . 1321 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1322 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1323 . 1325 8.2. Informative References 1327 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 1328 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 1329 . 1331 Authors' Addresses 1332 Acee Lindem 1333 Cisco Systems 1334 301 Midenhall Way 1335 Cary, NC 27513 1336 Email: acee@cisco.com 1338 Sharmila Palani 1339 Microsoft 1340 1 Microsoft Way 1341 Redmond, WA 98052 1342 Email: sharmila.palani@microsoft.com 1344 Yingzhen Qu 1345 Futurewei 1346 2330 Central Expressway 1347 Santa Clara, CA 95050 1348 United States of America 1349 Email: yingzhen.qu@futurewei.com