idnits 2.17.1 draft-ietf-lsr-ospfv3-extended-lsa-yang-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (October 1, 2020) is 1296 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 (~~), 2 warnings (==), 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: April 4, 2021 Microsoft 6 Y. Qu 7 Futurewei 8 October 1, 2020 10 YANG Model for OSPFv3 Extended LSAs 11 draft-ietf-lsr-ospfv3-extended-lsa-yang-06 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 April 4, 2021. 37 Copyright Notice 39 Copyright (c) 2020 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 44 (https://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 55 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 56 2. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . . . 2 57 3. OSPFv3 Extended LSAs . . . . . . . . . . . . . . . . . . . . 3 58 4. OSPFv3 Extended LSA Yang Module . . . . . . . . . . . . . . . 7 59 5. Security Considerations . . . . . . . . . . . . . . . . . . . 25 60 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 26 61 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 26 62 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 26 63 8.1. Normative References . . . . . . . . . . . . . . . . . . 26 64 8.2. Informative References . . . . . . . . . . . . . . . . . 28 65 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 28 67 1. Overview 69 YANG [RFC6020] [RFC7950] is a data definition language used to define 70 the contents of a conceptual data store that allows networked devices 71 to be managed using NETCONF [RFC6241]. YANG is proving relevant 72 beyond its initial confines, as bindings to other interfaces (e.g., 73 ReST) and encodings other than XML (e.g., JSON) are being defined. 74 Furthermore, YANG data models can be used as the basis for 75 implementation of other interfaces, such as CLI and programmatic 76 APIs. 78 This document defines a YANG data model augmenting the IETF OSPF YANG 79 model [I-D.ietf-ospf-yang], which itself augments [RFC8349], to 80 provide support for configuration and operational state for OSPFv3 81 Extended LSAs as defined in [RFC8362]. 83 The YANG modules in this document conform to the Network Management 84 Datastore Architecture (NMDA) [RFC8342]. 86 1.1. Requirements Language 88 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 89 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 90 document are to be interpreted as described in [RFC2119] [RFC8174]. 92 2. Tree Diagrams 94 This document uses the graphical representation of data models 95 defined in [RFC8340]. 97 3. OSPFv3 Extended LSAs 99 This document defines a model for the OSPFv3 Extended LSA feature. 100 It is an augmentation of the OSPF base model provided support for 101 OSPFv3 Link State Advertisement (LSA) Extensibility [RFC8362]. 102 OSPFv3 Extended LSAs provide extensible TLV-based LSAs for the base 103 LSA types defined in [RFC5340]. 105 The OSPFv3 Extended LSA YANG module requires support for the OSPF 106 base model[I-D.ietf-ospf-yang] which defines basic OSPF configuration 107 and state. The OSPF YANG model augments the ietf-routing YANG model 108 defined in [RFC8022]. The augmentations defined in the ietf-ospfv3- 109 extended-lsa YANG model will provide global configuration, area 110 configuration, and addition of OSPFv3 Extended LSAs to the Link State 111 Database (LSDB) operational state. 113 module: ietf-ospfv3-extended-lsa 114 augment /rt:routing/rt:control-plane-protocols 115 /rt:control-plane-protocol/ospf:ospf: 116 +--rw extended-lsa-support? boolean 117 augment /rt:routing/rt:control-plane-protocols 118 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area: 119 +--rw extended-lsa-support? boolean 120 augment /rt:routing/rt:control-plane-protocols 121 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area 122 /ospf:interfaces/ospf:interface/ospf:database 123 /ospf:link-scope-lsa-type/ospf:link-scope-lsas 124 /ospf:link-scope-lsa/ospf:version/ospf:ospfv3 125 /ospf:ospfv3/ospf:body: 126 +--ro e-link 127 +--ro rtr-priority? uint8 128 +--ro lsa-options 129 | +--ro lsa-options* identityref 130 +--ro e-link-tlvs* [] 131 +--ro unknown-tlv 132 | +--ro type? uint16 133 | +--ro length? uint16 134 | +--ro value? yang:hex-string 135 +--ro intra-prefix-tlv 136 | +--ro intra-prefix-tlv-length? uint16 137 | +--ro metric? rt-types:uint24 138 | +--ro prefix? inet:ip-prefix 139 | +--ro prefix-options 140 | | +--ro prefix-options* identityref 141 | +--ro prefix-length? uint8 142 | +--ro sub-tlvs* [] 143 | +--ro unknown-sub-tlv 144 | +--ro type? uint16 145 | +--ro length? uint16 146 | +--ro value? yang:hex-string 147 +--ro ipv6-link-local-tlv 148 | +--ro ipv6-link-local-tlv-length? uint16 149 | +--ro link-local-address? inet:ipv6-address 150 | +--ro sub-tlvs* [] 151 | +--ro unknown-sub-tlv 152 | +--ro type? uint16 153 | +--ro length? uint16 154 | +--ro value? yang:hex-string 155 +--ro ipv4-link-local-tlv 156 +--ro ipv4-link-local-tlv-length? uint16 157 +--ro link-local-address? inet:ipv4-address 158 +--ro sub-tlvs* [] 159 +--ro unknown-sub-tlv 160 +--ro type? uint16 161 +--ro length? uint16 162 +--ro value? yang:hex-string 163 augment /rt:routing/rt:control-plane-protocols 164 /rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area 165 /ospf:database/ospf:area-scope-lsa-type 166 /ospf:area-scope-lsas/ospf:area-scope-lsa 167 /ospf:version/ospf:ospfv3/ospf:ospfv3/ospf:body: 168 +--ro e-router 169 | +--ro router-bits 170 | | +--ro rtr-lsa-bits* identityref 171 | +--ro lsa-options 172 | | +--ro lsa-options* identityref 173 | +--ro e-router-tlvs* [] 174 | +--ro unknown-tlv 175 | | +--ro type? uint16 176 | | +--ro length? uint16 177 | | +--ro value? yang:hex-string 178 | +--ro link-tlv 179 | +--ro link-tlv-length? uint16 180 | +--ro interface-id? uint32 181 | +--ro neighbor-interface-id? uint32 182 | +--ro neighbor-router-id? rt-types:router-id 183 | +--ro type? uint8 184 | +--ro metric? uint16 185 | +--ro sub-tlvs* [] 186 | +--ro unknown-sub-tlv 187 | +--ro type? uint16 188 | +--ro length? uint16 189 | +--ro value? yang:hex-string 190 +--ro e-network 191 | +--ro lsa-options 192 | | +--ro lsa-options* identityref 193 | +--ro e-network-tlvs* [] 194 | +--ro unknown--tlv 195 | | +--ro type? uint16 196 | | +--ro length? uint16 197 | | +--ro value? yang:hex-string 198 | +--ro attached-router-tlv 199 | +--ro attached-router-tlv-length? uint16 200 | +--ro Adjacent-neighbor-router-id* rt-types:router-id 201 | +--ro sub-tlvs* [] 202 | +--ro unknown-sub-tlv 203 | +--ro type? uint16 204 | +--ro length? uint16 205 | +--ro value? yang:hex-string 206 +--ro e-inter-area-prefix 207 | +--ro e-inter-prefix-tlvs* [] 208 | +--ro unknown--tlv 209 | | +--ro type? uint16 210 | | +--ro length? uint16 211 | | +--ro value? yang:hex-string 212 | +--ro inter-prefix-tlv 213 | +--ro inter-prefix-tlv-length? uint16 214 | +--ro metric? rt-types:uint24 215 | +--ro prefix? inet:ip-prefix 216 | +--ro prefix-options 217 | | +--ro prefix-options* identityref 218 | +--ro prefix-length? uint8 219 | +--ro sub-tlvs* [] 220 | +--ro unknown-sub-tlv 221 | +--ro type? uint16 222 | +--ro length? uint16 223 | +--ro value? yang:hex-string 224 +--ro e-inter-area-router 225 | +--ro e-inter-router-tlvs* [] 226 | +--ro unknown-tlv 227 | | +--ro type? uint16 228 | | +--ro length? uint16 229 | | +--ro value? yang:hex-string 230 | +--ro inter-router-tlv 231 | +--ro inter-router-tlv-length? uint16 232 | +--ro router-bits 233 | | +--ro rtr-lsa-bits* identityref 234 | +--ro lsa-options 235 | | +--ro lsa-options* identityref 236 | +--ro metric? rt-types:uint24 237 | +--ro destination-router-id? rt-types:router-id 238 | +--ro sub-tlvs* [] 239 | +--ro unknown-sub-tlv 240 | +--ro type? uint16 241 | +--ro length? uint16 242 | +--ro value? yang:hex-string 243 +--ro e-intra-area-prefix 244 +--ro referenced-ls-type? uint16 245 +--ro referenced-link-state-id? uint32 246 +--ro referenced-adv-router? rt-types:router-id 247 +--ro e-intra-prefix-tlvs* [] 248 +--ro unknown-tlv 249 | +--ro type? uint16 250 | +--ro length? uint16 251 | +--ro value? yang:hex-string 252 +--ro intra-prefix-tlv 253 +--ro intra-prefix-tlv-length? uint16 254 +--ro metric? rt-types:uint24 255 +--ro prefix? inet:ip-prefix 256 +--ro prefix-options 257 | +--ro prefix-options* identityref 258 +--ro prefix-length? uint8 259 +--ro sub-tlvs* [] 260 +--ro unknown-sub-tlv 261 +--ro type? uint16 262 +--ro length? uint16 263 +--ro value? yang:hex-string 264 augment /rt:routing/rt:control-plane-protocols 265 /rt:control-plane-protocol/ospf:ospf/ospf:database 266 /ospf:as-scope-lsa-type/ospf:as-scope-lsas 267 /ospf:as-scope-lsa/ospf:version/ospf:ospfv3 268 /ospf:ospfv3/ospf:body: 269 +--ro e-as-external 270 | +--ro e-external-tlvs* [] 271 | +--ro unknown-tlv 272 | | +--ro type? uint16 273 | | +--ro length? uint16 274 | | +--ro value? yang:hex-string 275 | +--ro external-prefix-tlv 276 | +--ro external-prefix-tlv-length? uint16 277 | +--ro flags 278 | | +--ro ospfv3-e-external-prefix-bits* identityref 279 | +--ro metric? rt-types:uint24 280 | +--ro prefix? inet:ip-prefix 281 | +--ro prefix-options 282 | | +--ro prefix-options* identityref 283 | +--ro prefix-length? uint8 284 | +--ro sub-tlvs* [] 285 | +--ro unknown-sub-tlv 286 | | +--ro type? uint16 287 | | +--ro length? uint16 288 | | +--ro value? yang:hex-string 289 | +--ro ipv6-fwd-addr-sub-tlv 290 | | +--ro ipv6-fwd-addr-sub-tlv-length? uint16 291 | | +--ro forwarding-address? inet:ipv6-address 292 | +--ro ipv4-fwd-addr-sub-tlv 293 | | +--ro ipv4-fwd-addr-sub-tlv-length? uint16 294 | | +--ro forwarding-address? inet:ipv4-address 295 | +--ro route-tag-sub-tlv 296 | +--ro route-tag-sub-tlv-length? uint16 297 | +--ro route-tag? uint32 298 +--ro e-nssa 299 +--ro e-external-tlvs* [] 300 +--ro unknown-tlv 301 | +--ro type? uint16 302 | +--ro length? uint16 303 | +--ro value? yang:hex-string 304 +--ro external-prefix-tlv 305 +--ro external-prefix-tlv-length? uint16 306 +--ro flags 307 | +--ro ospfv3-e-external-prefix-bits* identityref 308 +--ro metric? rt-types:uint24 309 +--ro prefix? inet:ip-prefix 310 +--ro prefix-options 311 | +--ro prefix-options* identityref 312 +--ro prefix-length? uint8 313 +--ro sub-tlvs* [] 314 +--ro unknown-sub-tlv 315 | +--ro type? uint16 316 | +--ro length? uint16 317 | +--ro value? yang:hex-string 318 +--ro ipv6-fwd-addr-sub-tlv 319 | +--ro ipv6-fwd-addr-sub-tlv-length? uint16 320 | +--ro forwarding-address? inet:ipv6-address 321 +--ro ipv4-fwd-addr-sub-tlv 322 | +--ro ipv4-fwd-addr-sub-tlv-length? uint16 323 | +--ro forwarding-address? inet:ipv4-address 324 +--ro route-tag-sub-tlv 325 +--ro route-tag-sub-tlv-length? uint16 326 +--ro route-tag? uint32 328 4. OSPFv3 Extended LSA Yang Module 330 The following RFCs and drafts are not referenced in the document text 331 but are referenced in the ietf-ospfv3-extended-lsa.yang module: 332 [RFC6991], [RFC8294]. 334 file "ietf-ospfv3-extended-lsa@2020-10-01.yang" 335 module ietf-ospfv3-extended-lsa { 336 yang-version 1.1; 337 namespace 338 "urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa"; 340 prefix ospfv3-e-lsa; 342 import ietf-routing-types { 343 prefix "rt-types"; 344 reference "RFC 8294 - Common YANG Data Types for the 345 Routing Area"; 346 } 348 import ietf-inet-types { 349 prefix "inet"; 350 reference "RFC 6991 - Common YANG Data Types"; 351 } 353 import ietf-routing { 354 prefix "rt"; 355 reference "RFC 8349 - A YANG Data Model for Routing 356 Management (NMDA Version)"; 357 } 359 import ietf-ospf { 360 prefix "ospf"; 361 reference "RFC YYYY - A YANG Data Model for OSPF 362 Protocol"; 363 } 365 organization 366 "IETF LSR - Link State Routing Working Group"; 368 contact 369 "WG Web: 370 WG List: 372 Author: Acee Lindem 373 374 Author: Sharmila Palani 375 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 8242. 389 Copyright (c) 2020 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 2020-10-01 { 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 } 520 identity p-bit { 521 base ospfv3-e-prefix-option; 522 description 523 "When set, the NSSA area prefix should be 524 translated to an AS External LSA and advertised 525 by the translating NSSA Border Router."; 526 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 527 Extensibility, Section 3.1"; 529 } 531 identity dn-bit { 532 base ospfv3-e-prefix-option; 533 description 534 "When set, the inter-area-prefix LSA or 535 AS-external LSA prefix has been advertised as an 536 L3VPN prefix."; 537 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 538 Extensibility, Section 3.1"; 539 } 541 identity n-bit { 542 base ospfv3-e-prefix-option; 543 description 544 "When set, the prefix is a host address that identifies 545 the advertising router."; 546 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 547 Extensibility, Section 3.1"; 548 } 550 identity ospfv3-e-external-prefix-option { 551 description 552 "Base identity for OSPFv3 External Prefix Options."; 553 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 554 Extensibility, Section 3.6"; 555 } 557 identity e-bit { 558 base ospfv3-e-external-prefix-option; 559 description 560 "When set, the metric specified is a Type 2 561 external metric."; 562 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 563 Extensibility, Section 3.6"; 564 } 566 grouping unknown-sub-tlv { 567 description 568 "Unknown TLV grouping"; 569 container unknown-sub-tlv { 570 uses ospf:tlv; 571 description "Unknown External TLV Sub-TLV"; 572 } 573 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 574 Extensibility, Section 6.3"; 575 } 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"; 625 } 626 } 627 description 628 "IPv6 Forwarding Address Sub-TLV grouping"; 629 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 630 Extensibility, Section 3.10"; 631 } 633 grouping ipv4-fwd-addr-sub-tlv { 634 container ipv4-fwd-addr-sub-tlv { 635 description 636 "IPv4 Forwarding Address Sub-TLV"; 637 leaf ipv4-fwd-addr-sub-tlv-length { 638 type uint16; 639 description 640 "IPv4 Forwarding Addrss Sub-TLV Length - 4 641 for IPv4 address"; 642 } 643 leaf forwarding-address { 644 type inet:ipv4-address; 645 description 646 "Forwarding address"; 647 } 648 } 649 description 650 "IPv4 Forwarding Address Sub-TLV grouping"; 651 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 652 Extensibility, Section 3.11"; 653 } 655 grouping route-tag-sub-tlv { 656 container route-tag-sub-tlv { 657 description 658 "Route Tag Sub-TLV"; 659 leaf route-tag-sub-tlv-length { 660 type uint16; 661 description 662 "Route Tag Sub-TLV Length - 4 for 32-bit tag"; 663 } 664 leaf route-tag { 665 type uint32; 666 description 667 "Route Tag"; 668 } 669 } 670 description 671 "Route Tag Sub-TLV grouping"; 672 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 673 Extensibility, Section 3.12"; 674 } 676 grouping external-prefix-tlv { 677 container external-prefix-tlv { 678 description "External Prefix LSA TLV"; 679 leaf external-prefix-tlv-length { 680 type uint16; 681 description 682 "External Prefix TLV Length - Variable dependent 683 on sub-TLVs"; 684 } 685 container flags { 686 leaf-list ospfv3-e-external-prefix-bits { 687 type identityref { 688 base ospfv3-e-external-prefix-option; 689 } 690 description "OSPFv3 external-prefix TLV bits list."; 691 } 692 description "External Prefix Flags"; 693 } 694 leaf metric { 695 type rt-types:uint24; 696 description "External Prefix Metric"; 697 } 698 uses ospfv3-lsa-prefix; 699 list sub-tlvs { 700 description "External Prefix TLV Sub-TLVs"; 701 uses unknown-sub-tlv; 702 uses ipv6-fwd-addr-sub-tlv; 703 uses ipv4-fwd-addr-sub-tlv; 704 uses route-tag-sub-tlv; 705 } 706 } 707 description "External Prefix TLV Grouping"; 708 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 709 Extensibility, Section 3.6"; 710 } 712 grouping intra-area-prefix-tlv { 713 container intra-prefix-tlv { 714 description "Intra-Area Prefix LSA TLV"; 715 leaf intra-prefix-tlv-length { 716 type uint16; 717 description 718 "Intra-Area Prefix TLV Length - Variable dependent 719 on sub-TLVs"; 720 } 721 leaf metric { 722 type rt-types:uint24; 723 description "Intra-Area Prefix Metric"; 724 } 725 uses ospfv3-lsa-prefix; 726 list sub-tlvs { 727 description "Intra-Area Prefix TLV Sub-TLVs"; 728 uses unknown-sub-tlv; 729 } 730 } 731 description "Intra-Area Prefix TLV Grouping"; 732 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 733 Extensibility, Section 3.4"; 734 } 736 grouping ipv6-link-local-tlv { 737 container ipv6-link-local-tlv { 738 description "IPv6 Link-Local LSA TLV"; 739 leaf ipv6-link-local-tlv-length { 740 type uint16; 741 description 742 "IPv6 Link-Local TLV Length - Variable dependent 743 on sub-TLVs"; 744 } 745 leaf link-local-address { 746 type inet:ipv6-address; 747 description 748 "IPv6 Link Local address"; 749 } 750 list sub-tlvs { 751 description "IPv6 Link Local TLV Sub-TLVs"; 752 uses unknown-sub-tlv; 753 } 754 } 755 description "IPv6 Link-Local TLV Grouping"; 756 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 757 Extensibility, Section 3.8"; 758 } 760 grouping ipv4-link-local-tlv { 761 container ipv4-link-local-tlv { 762 description "IPv4 Link-Local LSA TLV"; 763 leaf ipv4-link-local-tlv-length { 764 type uint16; 765 description 766 "IPv4 Link-Local TLV Length - Variable dependent 767 on sub-TLVs"; 768 } 769 leaf link-local-address { 770 type inet:ipv4-address; 771 description 772 "IPv4 Link Local address"; 773 } 774 list sub-tlvs { 775 description "IPv4 Link Local TLV Sub-TLVs"; 776 uses unknown-sub-tlv; 777 } 778 } 779 description "IPv4 Link-Local TLV Grouping"; 780 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 781 Extensibility, Section 3.9"; 782 } 784 grouping ospfv3-e-lsa-area { 785 description "Area scope OSPFv3 Extended LSAs."; 786 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 787 Extensibility, Section 4"; 789 container e-router { 790 when "../../ospf:header/ospf:type = " 791 + "'ospfv3-e-lsa:ospfv3-e-router-lsa'" { 792 description "Only valid for OSPFv3 Extended-Router LSAs"; 793 } 794 description "OSPv3 Extended Router LSA"; 795 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 796 Extensibility, Section 4.1"; 797 uses ospf:ospf-router-lsa-bits; 798 uses ospf:ospfv3-lsa-options; 800 list e-router-tlvs { 801 description "E-Router LSA TLVs"; 802 container unknown-tlv { 803 uses ospf:tlv; 804 description "Unknown E-Router TLV"; 805 } 806 container link-tlv { 807 description "E-Router LSA TLV"; 808 leaf link-tlv-length { 809 type uint16; 810 description 811 "Link TLV Length - Variable dependent on sub-TLVs"; 812 } 813 leaf interface-id { 814 type uint32; 815 description "Interface ID for link"; 816 } 817 leaf neighbor-interface-id { 818 type uint32; 819 description "Neighbor's Interface ID for link"; 820 } 821 leaf neighbor-router-id { 822 type rt-types:router-id; 823 description "Neighbor's Router ID for link"; 824 } 825 leaf type { 826 type ospf:router-link-type; 827 description "Link type: 1 - Point-to-Point Link 828 2 - Transit Network Link 829 3 - Stub Network Link Link 830 4 - Virtual Link"; 831 } 832 leaf metric { 833 type uint16; 834 description "Link Metric"; 835 } 836 list sub-tlvs { 837 description "Link TLV Sub-TLVs"; 838 uses unknown-sub-tlv; 839 } 840 } 841 } 842 } 844 container e-network { 845 when "../../ospf:header/ospf:type = " 846 + "'ospfv3-e-lsa:ospfv3-e-network-lsa'" { 847 description 848 "Only applies to E-Network LSAs."; 849 } 850 description "Extended Network LSA"; 851 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 852 Extensibility, Section 4.2"; 853 uses ospf:ospfv3-lsa-options; 854 list e-network-tlvs { 855 description "E-Network LSA TLVs"; 856 container unknown--tlv { 857 uses ospf:tlv; 858 description "Unknown E-Network TLV"; 859 } 860 container attached-router-tlv { 861 description "Attached Router TLV"; 862 leaf attached-router-tlv-length { 863 type uint16; 864 description 865 "Attached Router TLV Length - Variable dependent 866 on sub-TLVs"; 867 } 868 leaf-list Adjacent-neighbor-router-id { 869 type rt-types:router-id; 870 description "Adjacent Neighbor's Router ID"; 871 } 872 list sub-tlvs { 873 description "Attached Router TLV Sub-TLVs"; 874 uses unknown-sub-tlv; 875 } 876 } 877 } 878 } 880 container e-inter-area-prefix { 881 when "../../ospf:header/ospf:type = " 882 + "'ospfv3-e-lsa:ospfv3-e-inter-area-prefix-lsa'" { 883 description 884 "Only applies to E-Inter-Area-Prefix LSAs."; 885 } 886 description "Extended Inter-Area Prefix LSA"; 887 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 888 Extensibility, Section 4.3"; 889 list e-inter-prefix-tlvs { 890 description "E-Inter-Area-Prefix LSA TLVs"; 891 container unknown--tlv { 892 uses ospf:tlv; 893 description "Unknown E-Inter-Area-Prefix TLV"; 894 } 895 container inter-prefix-tlv { 896 description "Unknown E-Inter-Area-Prefix LSA TLV"; 897 leaf inter-prefix-tlv-length { 898 type uint16; 899 description 900 "Inter-Area-Prefix TLV Length - Variable dependent 901 on sub-TLVs"; 902 } 903 leaf metric { 904 type rt-types:uint24; 905 description "Inter-Area Prefix Metric"; 906 } 907 uses ospfv3-lsa-prefix; 908 list sub-tlvs { 909 description "Inter-Area Prefix TLV Sub-TLVs"; 910 uses unknown-sub-tlv; 911 } 912 } 914 } 915 } 917 container e-inter-area-router { 918 when "../../ospf:header/ospf:type = " 919 + "'ospfv3-e-lsa:ospfv3-e-inter-area-router-lsa'" { 920 description 921 "Only applies to E-Inter-Area-Router LSAs."; 922 } 923 description "Extended Inter-Area Router LSA"; 924 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 925 Extensibility, Section 4.4"; 926 list e-inter-router-tlvs { 927 description "E-Inter-Area-Router LSA TLVs"; 928 container unknown-tlv { 929 uses ospf:tlv; 930 description "Unknown E-Inter-Area-Router TLV"; 931 } 932 container inter-router-tlv { 933 description "Unknown E-Inter-Area-Router LSA TLV"; 934 leaf inter-router-tlv-length { 935 type uint16; 936 description 937 "Inter-Area-Router TLV Length - Variable dependent 938 on sub-TLVs"; 939 } 940 uses ospf:ospf-router-lsa-bits; 941 uses ospf:ospfv3-lsa-options; 942 leaf metric { 943 type rt-types:uint24; 944 description "Inter-Area Router Metric"; 945 } 946 leaf destination-router-id { 947 type rt-types:router-id; 948 description "Destination Router ID"; 949 } 950 list sub-tlvs { 951 description "Inter-Area Router TLV Sub-TLVs"; 952 uses unknown-sub-tlv; 953 } 954 } 955 } 956 } 958 container e-intra-area-prefix { 959 when "../../ospf:header/ospf:type = " 960 + "'ospfv3-e-lsa:ospfv3-e-intra-area-prefix-lsa'" { 961 description 962 "Only applies to E-Intra-Area-Prefix LSAs."; 963 } 964 description "E-Intra-Area-Prefix LSA"; 965 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 966 Extensibility, Section 4.8"; 967 leaf referenced-ls-type { 968 type uint16; 969 description "Referenced Link State type"; 970 } 971 leaf referenced-link-state-id { 972 type uint32; 973 description 974 "Referenced Link State ID"; 975 } 976 leaf referenced-adv-router { 977 type rt-types:router-id; 978 description 979 "Referenced Advertising Router"; 980 } 981 list e-intra-prefix-tlvs { 982 description "E-Intra-Area-Prefix LSA TLVs"; 983 container unknown-tlv { 984 uses ospf:tlv; 985 description "Unknown E-Intra-Area-Prefix TLV"; 986 } 987 uses intra-area-prefix-tlv; 988 } 989 } 990 } 992 grouping ospfv3-e-lsa-as { 993 description "AS scope OSPFv3 Extended LSAs."; 994 container e-as-external { 995 when "../../ospf:header/ospf:type = " 996 + "'ospfv3-e-lsa:ospfv3-e-as-external-lsa'" { 997 description 998 "Only applies to E-AS-external LSAs."; 999 } 1000 list e-external-tlvs { 1001 description "E-External LSA TLVs"; 1002 container unknown-tlv { 1003 uses ospf:tlv; 1004 description "Unknown E-External TLV"; 1005 } 1006 uses external-prefix-tlv; 1007 } 1008 description "E-AS-External LSA."; 1009 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1010 Extensibility, Section 4.5"; 1011 } 1013 container e-nssa { 1014 when "../../ospf:header/ospf:type = " 1015 + "'ospfv3-e-lsa:ospfv3-e-nssa-lsa'" { 1016 description 1017 "Only applies to E-NSSA LSAs."; 1018 } 1019 list e-external-tlvs { 1020 description "E-NSSA LSA TLVs"; 1021 container unknown-tlv { 1022 uses ospf:tlv; 1023 description "Unknown E-External TLV"; 1024 } 1025 uses external-prefix-tlv; 1026 } 1027 description "E-NSSA LSA."; 1028 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1029 Extensibility, Section 4.6"; 1030 } 1031 } 1033 grouping ospfv3-e-lsa-link { 1034 description "Link scope OSPFv3 Extended LSAs."; 1035 container e-link { 1036 when "../../ospf:header/ospf:type = " 1037 + "'ospfv3-e-lsa:ospfv3-e-link-lsa'" { 1038 description 1039 "Only applies to Extended Link LSAs."; 1040 } 1041 description "E-Link LSA"; 1042 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1043 Extensibility, Section 4.7"; 1044 leaf rtr-priority { 1045 type uint8; 1046 description "Router Priority for the interface."; 1047 } 1048 uses ospf:ospfv3-lsa-options; 1049 list e-link-tlvs { 1050 description "E-Link LSA TLVs"; 1051 container unknown-tlv { 1052 uses ospf:tlv; 1053 description "Unknown E-Link TLV"; 1054 } 1055 uses intra-area-prefix-tlv; 1056 uses ipv6-link-local-tlv; 1057 uses ipv4-link-local-tlv; 1059 } 1060 } 1061 } 1063 /* Configuration */ 1064 augment "/rt:routing/rt:control-plane-protocols" 1065 + "/rt:control-plane-protocol/ospf:ospf" { 1066 when "../rt:type = 'ospf:ospfv3'" { 1067 description 1068 "This augments the OSPFv3 routing protocol when used."; 1069 } 1070 description 1071 "This augments the OSPFv3 protocol configuration 1072 with extended LSA support."; 1073 leaf extended-lsa-support { 1074 type boolean; 1075 default false; 1076 description 1077 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1078 domain"; 1079 reference 1080 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1081 Extensibility, Appendix B - ExtendedLSASupport"; 1082 } 1083 } 1085 augment "/rt:routing/rt:control-plane-protocols/" 1086 + "rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area" { 1087 when "../../../rt:type = 'ospf:ospfv3'" { 1088 description 1089 "This augments the OSPFv3 area configuration 1090 when used."; 1091 } 1092 description 1093 "This augments the OSPFv3 protocol area 1094 configuration with extended LSA support."; 1095 leaf extended-lsa-support { 1096 type boolean; 1097 must "derived-from(../ospf:area-type,'stub-nssa-area') or " 1098 + "(current() = 'true') or " 1099 + "(../../../extended-lsa-support = 'false')" { 1100 description 1101 "For regular areas, i.e., areas where AS-scoped LSAs 1102 disabling AreaExtendedLSASupport for a regular 1103 OSPFv3 area (not a Stub or NSSA area) when 1104 ExtendedLSASupport is enabled is contradictory and 1105 is prohibited."; 1106 } 1107 description 1108 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1109 area. If not specified, Extended LSA support status 1110 is inherited from the instance level configuration."; 1111 reference 1112 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1113 Extensibility, Appendix B - AreaExtendedLSASupport"; 1114 } 1115 } 1117 /* 1118 * Link State Database (LSDB) Augmentations 1119 */ 1120 augment "/rt:routing/" 1121 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1122 + "ospf:ospf/ospf:areas/ospf:area/" 1123 + "ospf:interfaces/ospf:interface/ospf:database/" 1124 + "ospf:link-scope-lsa-type/ospf:link-scope-lsas/" 1125 + "ospf:link-scope-lsa/ospf:version/ospf:ospfv3/" 1126 + "ospf:ospfv3/ospf:body" { 1127 when "../../../../../../../../../../../" 1128 + "rt:type = 'ospf:ospfv3'" { 1129 description 1130 "This augmentation is only valid for OSPFv3."; 1131 } 1132 description 1133 "OSPFv3 Link-Scoped Extended LSAs"; 1135 uses ospfv3-e-lsa-link; 1136 } 1138 augment "/rt:routing/" 1139 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1140 + "ospf:ospf/ospf:areas/ospf:area/ospf:database/" 1141 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 1142 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 1143 + "ospf:ospfv3/ospf:body" { 1144 when "../../../../../../../../../" 1145 + "rt:type = 'ospf:ospfv3'" { 1146 description 1147 "This augmentation is only valid for OSPFv3."; 1148 } 1149 description 1150 "OSPFv3 Area-Scoped Extended LSAs"; 1152 uses ospfv3-e-lsa-area; 1153 } 1154 augment "/rt:routing/" 1155 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1156 + "ospf:ospf/ospf:database/" 1157 + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/" 1158 + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/" 1159 + "ospf:ospfv3/ospf:body" { 1160 when "../../../../../../../" 1161 + "rt:type = 'ospf:ospfv3'" { 1162 description 1163 "This augmentation is only valid for OSPFv3."; 1164 } 1165 description 1166 "OSPFv3 AS-Scoped Extended LSAs"; 1168 uses ospfv3-e-lsa-as; 1169 } 1170 } 1171 1173 5. Security Considerations 1175 The YANG modules specified in this document define a schema for data 1176 that is designed to be accessed via network management protocols such 1177 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 1178 is the secure transport layer, and the mandatory-to-implement secure 1179 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 1180 is HTTPS, and the mandatory-to-implement secure transport is TLS 1181 [RFC8446]. 1183 The NETCONF access control model [RFC6536] provides the means to 1184 restrict access for particular NETCONF or RESTCONF users to a pre- 1185 configured subset of all available NETCONF or RESTCONF protocol 1186 operations and content. 1188 There are a number of data nodes defined in ietf-ospfv3-extended- 1189 lsa.yang module that are writable/creatable/deletable (i.e., config 1190 true, which is the default). These data nodes may be considered 1191 sensitive or vulnerable in some network environments. Write 1192 operations (e.g., edit-config) to these data nodes without proper 1193 protection can have a negative effect on network operations. For 1194 OSPFv3 Extended LSAs, the ability to disable OSPFv3 Extended LSA 1195 support result in a denial of service. 1197 Some of the readable data nodes in the ietf-ospfv3-extended-lsa.yang 1198 module may be considered sensitive or vulnerable in some network 1199 environments. It is thus important to control read access (e.g., via 1200 get, get-config, or notification) to these data nodes. The exposure 1201 of the Link State Database (LSDB) will expose the detailed topology 1202 of the network. This may be undesirable since both due to the fact 1203 that exposure may facilitate other attacks. Additionally, network 1204 operators may consider their topologies to be sensitive confidential 1205 data. 1207 6. IANA Considerations 1209 This document registers a URI in the IETF XML registry [RFC3688]. 1210 Following the format in [RFC3688], the following registration is 1211 requested to be made: 1213 URI: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1214 Registrant Contact: The IESG. 1215 XML: N/A, the requested URI is an XML namespace. 1217 This document registers a YANG module in the YANG Module Names 1218 registry [RFC6020]. 1220 name: ietf-ospfv3-extended-lsa 1221 namespace: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1222 prefix: ospfv3-e-lsa 1223 reference: RFC XXXX 1225 7. Acknowledgements 1227 This document was produced using Marshall Rose's xml2rfc tool. 1229 The YANG model was developed using the suite of YANG tools written 1230 and maintained by numerous authors. 1232 Thanks much to Tom Petch for his review and comments. 1234 8. References 1236 8.1. Normative References 1238 [I-D.ietf-ospf-yang] 1239 Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, 1240 "YANG Data Model for OSPF Protocol", draft-ietf-ospf- 1241 yang-29 (work in progress), October 2019. 1243 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1244 Requirement Levels", BCP 14, RFC 2119, 1245 DOI 10.17487/RFC2119, March 1997, 1246 . 1248 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 1249 DOI 10.17487/RFC3688, January 2004, 1250 . 1252 [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF 1253 for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008, 1254 . 1256 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 1257 the Network Configuration Protocol (NETCONF)", RFC 6020, 1258 DOI 10.17487/RFC6020, October 2010, 1259 . 1261 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1262 and A. Bierman, Ed., "Network Configuration Protocol 1263 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1264 . 1266 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 1267 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 1268 . 1270 [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration 1271 Protocol (NETCONF) Access Control Model", RFC 6536, 1272 DOI 10.17487/RFC6536, March 2012, 1273 . 1275 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", 1276 RFC 6991, DOI 10.17487/RFC6991, July 2013, 1277 . 1279 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 1280 RFC 7950, DOI 10.17487/RFC7950, August 2016, 1281 . 1283 [RFC8022] Lhotka, L. and A. Lindem, "A YANG Data Model for Routing 1284 Management", RFC 8022, DOI 10.17487/RFC8022, November 1285 2016, . 1287 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 1288 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 1289 . 1291 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1292 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1293 May 2017, . 1295 [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, 1296 "Common YANG Data Types for the Routing Area", RFC 8294, 1297 DOI 10.17487/RFC8294, December 2017, 1298 . 1300 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 1301 and R. Wilton, "Network Management Datastore Architecture 1302 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 1303 . 1305 [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for 1306 Routing Management (NMDA Version)", RFC 8349, 1307 DOI 10.17487/RFC8349, March 2018, 1308 . 1310 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 1311 F. Baker, "OSPFv3 Link State Advertisement (LSA) 1312 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 1313 2018, . 1315 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1316 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1317 . 1319 8.2. Informative References 1321 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 1322 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 1323 . 1325 Authors' Addresses 1327 Acee Lindem 1328 Cisco Systems 1329 301 Midenhall Way 1330 Cary, NC 27513 1332 EMail: acee@cisco.com 1334 Sharmila Palani 1335 Microsoft 1336 1 Microsoft Way, Redmond, WA 98052170 West Tasman Drive 1337 Redmond, WA 98052 1339 EMail: sharmila.palani@microsoft.com 1340 Yingzhen Qu 1341 Futurewei 1342 2330 Central Expressway 1343 Santa Clara, CA 95050 1344 USA 1346 EMail: yingzhen.qu@futurewei.com