idnits 2.17.1 draft-ietf-lsr-ospfv3-extended-lsa-yang-05.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 (September 30, 2020) is 1303 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 S. Palani 4 Intended status: Standards Track Cisco Systems 5 Expires: April 3, 2021 Y. Qu 6 Futurewei 7 September 30, 2020 9 YANG Model for OSPFv3 Extended LSAs 10 draft-ietf-lsr-ospfv3-extended-lsa-yang-05 12 Abstract 14 This document defines a YANG data model augmenting the IETF OSPF YANG 15 model to provide support for OSPFv3 Link State Advertisement (LSA) 16 Extensibility as defined in RFC 8362. OSPFv3 Extended LSAs provide 17 extensible TLV-based LSAs for the base LSA types defined in RFC 5340. 19 Status of This Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at https://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on April 3, 2021. 36 Copyright Notice 38 Copyright (c) 2020 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (https://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 54 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 55 2. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . . . 2 56 3. OSPFv3 Extended LSAs . . . . . . . . . . . . . . . . . . . . 3 57 4. OSPFv3 Extended LSA Yang Module . . . . . . . . . . . . . . . 7 58 5. Security Considerations . . . . . . . . . . . . . . . . . . . 25 59 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 26 60 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 26 61 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 26 62 8.1. Normative References . . . . . . . . . . . . . . . . . . 26 63 8.2. Informative References . . . . . . . . . . . . . . . . . 28 64 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 28 66 1. Overview 68 YANG [RFC6020] [RFC7950] is a data definition language used to define 69 the contents of a conceptual data store that allows networked devices 70 to be managed using NETCONF [RFC6241]. YANG is proving relevant 71 beyond its initial confines, as bindings to other interfaces (e.g., 72 ReST) 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@2020-09-30.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 375 Author: Yingzhen Qu 376 "; 378 description 379 "This YANG module defines the configuration 380 and operational state for OSPFv3 Extended LSAs, which is 381 common across all of the vendor implementations. The 382 semantics and encodings for OSPFv3 Extended LSAs is 383 described in RFC 8362. 385 This YANG model conforms to the Network Management 386 Datastore Architecture (NMDA) as described in RFC 8242. 388 Copyright (c) 2020 IETF Trust and the persons identified as 389 authors of the code. All rights reserved. 391 Redistribution and use in source and binary forms, with or 392 without modification, is permitted pursuant to, and subject 393 to the license terms contained in, the Simplified BSD License 394 set forth in Section 4.c of the IETF Trust's Legal Provisions 395 Relating to IETF Documents 396 (http://trustee.ietf.org/license-info). 398 This version of this YANG module is part of RFC XXXX; 399 see the RFC itself for full legal notices."; 401 reference "RFC XXXX - YANG Model for OSPFv3 Extended LSAs"; 403 revision 2020-09-30 { 404 description 405 "Initial revision."; 406 reference 407 "RFC XXXX: A YANG Data Model for OSPFv3 Extended LSAs."; 408 } 410 /* 411 * OSPFv3 Extend LSA Type Identities 412 */ 413 identity ospfv3-e-router-lsa { 414 base ospf:ospfv3-lsa-type; 415 description 416 "OSPFv3 Extended Router LSA - Type 0xA021"; 417 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 418 Extensibility, Section 4.1"; 419 } 421 identity ospfv3-e-network-lsa { 422 base ospf:ospfv3-lsa-type; 423 description 424 "OSPFv3 Extended Network LSA - Type 0xA022"; 425 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 426 Extensibility, Section 4.2"; 427 } 429 identity ospfv3-e-summary-lsa-type { 430 base ospf:ospfv3-lsa-type; 431 description 432 "OSPFv3 Extended Summary LSA types"; 433 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 434 Extensibility, Section 4.3 and Section 4.4"; 435 } 437 identity ospfv3-e-inter-area-prefix-lsa { 438 base ospfv3-e-summary-lsa-type; 439 description 440 "OSPFv3 Extended Inter-area Prefix LSA - Type 0xA023"; 441 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 442 Extensibility, Section 4.3"; 443 } 445 identity ospfv3-e-inter-area-router-lsa { 446 base ospfv3-e-summary-lsa-type; 447 description 448 "OSPFv3 Extended Inter-area Router LSA - Type 0xA024"; 449 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 450 Extensibility, Section 4.3"; 451 } 453 identity ospfv3-e-external-lsa-type { 454 base ospf:ospfv3-lsa-type; 455 description 456 "OSPFv3 Extended External LSA types"; 457 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 458 Extensibility, Section 4.5 and Section 4.6"; 459 } 461 identity ospfv3-e-as-external-lsa { 462 base ospfv3-e-external-lsa-type; 463 description 464 "OSPFv3 Extended AS-External LSA - Type 0xC025"; 465 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 466 Extensibility, Section 4.5"; 467 } 469 identity ospfv3-e-nssa-lsa { 470 base ospfv3-e-external-lsa-type; 471 description 472 "OSPFv3 Extended Not-So-Stubby-Area (NSSA) LSA - 473 Type 0xA027"; 474 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 475 Extensibility, Section 4.6"; 476 } 478 identity ospfv3-e-link-lsa { 479 base ospf:ospfv3-lsa-type; 480 description 481 "OSPFv3 Extended Link LSA - Type 0x8028"; 482 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 483 Extensibility, Section 4.7"; 484 } 486 identity ospfv3-e-intra-area-prefix-lsa { 487 base ospf:ospfv3-lsa-type; 488 description 489 "OSPFv3 Extended Intra-area Prefix LSA - Type 0xA029"; 490 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 491 Extensibility, Section 4.8"; 492 } 494 identity ospfv3-e-prefix-option { 495 description 496 "Base identity for OSPFv3 Prefix Options."; 497 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 498 Extensibility, Section 3.1"; 499 } 501 identity nu-bit { 502 base ospfv3-e-prefix-option; 503 description 504 "When set, the prefix should be excluded 505 from IPv6 unicast calculations."; 506 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 507 Extensibility, Section 3.1"; 508 } 510 identity la-bit { 511 base ospfv3-e-prefix-option; 512 description 513 "When set, the prefix is actually an IPv6 interface 514 address of the Advertising Router."; 515 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 516 Extensibility, Section 3.1"; 517 } 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"; 528 } 530 identity dn-bit { 531 base ospfv3-e-prefix-option; 532 description 533 "When set, the inter-area-prefix LSA or 534 AS-external LSA prefix has been advertised as an 535 L3VPN prefix."; 536 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 537 Extensibility, Section 3.1"; 538 } 540 identity n-bit { 541 base ospfv3-e-prefix-option; 542 description 543 "When set, the prefix is a host address that identifies 544 the advertising router."; 545 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 546 Extensibility, Section 3.1"; 547 } 549 identity ospfv3-e-external-prefix-option { 550 description 551 "Base identity for OSPFv3 External Prefix Options."; 552 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 553 Extensibility, Section 3.6"; 554 } 556 identity e-bit { 557 base ospfv3-e-external-prefix-option; 558 description 559 "When set, the metric specified is a Type 2 560 external metric."; 561 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 562 Extensibility, Section 3.6"; 563 } 565 grouping unknown-sub-tlv { 566 description 567 "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 } 575 grouping ospfv3-lsa-prefix { 576 description 577 "OSPFv3 LSA prefix"; 579 leaf prefix { 580 type inet:ip-prefix; 581 description 582 "LSA Prefix"; 583 } 584 container prefix-options { 585 leaf-list prefix-options { 586 type identityref { 587 base ospfv3-e-prefix-option; 588 } 589 description 590 "OSPFv3 prefix option flag list. This list will 591 contain the identities for the OSPFv3 options 592 that are set for the OSPFv3 prefix."; 593 } 594 description "Prefix options."; 595 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 596 Extensibility, Section 3.1"; 597 } 599 leaf prefix-length { 600 type uint8 { 601 range "0..128"; 602 } 603 description "Prefix length."; 604 } 605 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 606 Extensibility, Section 3"; 607 } 609 grouping ipv6-fwd-addr-sub-tlv { 610 container ipv6-fwd-addr-sub-tlv { 611 description 612 "IPv6 Forwarding Address Sub-TLV"; 613 leaf ipv6-fwd-addr-sub-tlv-length { 614 type uint16; 615 description 616 "IPv6 Forwarding Addrss Sub-TLV Length - 16 617 for IPv6 address"; 618 } 619 leaf forwarding-address { 620 type inet:ipv6-address; 621 description 622 "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 } 913 } 914 } 916 container e-inter-area-router { 917 when "../../ospf:header/ospf:type = " 918 + "'ospfv3-e-lsa:ospfv3-e-inter-area-router-lsa'" { 919 description 920 "Only applies to E-Inter-Area-Router LSAs."; 921 } 922 description "Extended Inter-Area Router LSA"; 923 reference "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 924 Extensibility, Section 4.4"; 925 list e-inter-router-tlvs { 926 description "E-Inter-Area-Router LSA TLVs"; 927 container unknown-tlv { 928 uses ospf:tlv; 929 description "Unknown E-Inter-Area-Router TLV"; 930 } 931 container inter-router-tlv { 932 description "Unknown E-Inter-Area-Router LSA TLV"; 933 leaf inter-router-tlv-length { 934 type uint16; 935 description 936 "Inter-Area-Router TLV Length - Variable dependent 937 on sub-TLVs"; 938 } 939 uses ospf:ospf-router-lsa-bits; 940 uses ospf:ospfv3-lsa-options; 941 leaf metric { 942 type rt-types:uint24; 943 description "Inter-Area Router Metric"; 944 } 945 leaf destination-router-id { 946 type rt-types:router-id; 947 description "Destination Router ID"; 948 } 949 list sub-tlvs { 950 description "Inter-Area Router TLV Sub-TLVs"; 951 uses unknown-sub-tlv; 952 } 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; 1058 } 1059 } 1060 } 1062 /* Configuration */ 1063 augment "/rt:routing/rt:control-plane-protocols" 1064 + "/rt:control-plane-protocol/ospf:ospf" { 1065 when "../rt:type = 'ospf:ospfv3'" { 1066 description 1067 "This augments the OSPFv3 routing protocol when used."; 1068 } 1069 description 1070 "This augments the OSPFv3 protocol configuration 1071 with extended LSA support."; 1072 leaf extended-lsa-support { 1073 type boolean; 1074 default false; 1075 description 1076 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1077 domain"; 1078 reference 1079 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1080 Extensibility, Appendix B - ExtendedLSASupport"; 1081 } 1082 } 1084 augment "/rt:routing/rt:control-plane-protocols/" 1085 + "rt:control-plane-protocol/ospf:ospf/ospf:areas/ospf:area" { 1086 when "../../../rt:type = 'ospf:ospfv3'" { 1087 description 1088 "This augments the OSPFv3 area configuration 1089 when used."; 1090 } 1091 description 1092 "This augments the OSPFv3 protocol area 1093 configuration with extended LSA support."; 1094 leaf extended-lsa-support { 1095 type boolean; 1096 must "derived-from(../ospf:area-type,'stub-nssa-area') or " 1097 + "not(../extended-lsa-support) or " 1098 + "../extended-lsa-support = '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."; 1107 } 1108 description 1109 "Enable OSPFv3 Extended LSA Support for the OSPFv3 1110 area. If not specified, Extended LSA support status 1111 is inherited from the instance level configuration."; 1112 reference 1113 "RFC 8362 - OSPFv3 Link State Advertisement (LSA) 1114 Extensibility, Appendix B - AreaExtendedLSASupport"; 1115 } 1116 } 1118 /* 1119 * Link State Database (LSDB) Augmentations 1120 */ 1121 augment "/rt:routing/" 1122 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1123 + "ospf:ospf/ospf:areas/ospf:area/" 1124 + "ospf:interfaces/ospf:interface/ospf:database/" 1125 + "ospf:link-scope-lsa-type/ospf:link-scope-lsas/" 1126 + "ospf:link-scope-lsa/ospf:version/ospf:ospfv3/" 1127 + "ospf:ospfv3/ospf:body" { 1128 when "../../../../../../../../../../../" 1129 + "rt:type = 'ospf:ospfv3'" { 1130 description 1131 "This augmentation is only valid for OSPFv3."; 1132 } 1133 description 1134 "OSPFv3 Link-Scoped Extended LSAs"; 1136 uses ospfv3-e-lsa-link; 1137 } 1139 augment "/rt:routing/" 1140 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1141 + "ospf:ospf/ospf:areas/ospf:area/ospf:database/" 1142 + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" 1143 + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/" 1144 + "ospf:ospfv3/ospf:body" { 1145 when "../../../../../../../../../" 1146 + "rt:type = 'ospf:ospfv3'" { 1147 description 1148 "This augmentation is only valid for OSPFv3."; 1149 } 1150 description 1151 "OSPFv3 Area-Scoped Extended LSAs"; 1153 uses ospfv3-e-lsa-area; 1154 } 1155 augment "/rt:routing/" 1156 + "rt:control-plane-protocols/rt:control-plane-protocol/" 1157 + "ospf:ospf/ospf:database/" 1158 + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/" 1159 + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/" 1160 + "ospf:ospfv3/ospf:body" { 1161 when "../../../../../../../" 1162 + "rt:type = 'ospf:ospfv3'" { 1163 description 1164 "This augmentation is only valid for OSPFv3."; 1165 } 1166 description 1167 "OSPFv3 AS-Scoped Extended LSAs"; 1169 uses ospfv3-e-lsa-as; 1170 } 1171 } 1172 CODE ENDS> 1174 5. Security Considerations 1176 The YANG modules specified in this document define a schema for data 1177 that is designed to be accessed via network management protocols such 1178 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 1179 is the secure transport layer, and the mandatory-to-implement secure 1180 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 1181 is HTTPS, and the mandatory-to-implement secure transport is TLS 1182 [RFC8446]. 1184 The NETCONF access control model [RFC6536] provides the means to 1185 restrict access for particular NETCONF or RESTCONF users to a pre- 1186 configured subset of all available NETCONF or RESTCONF protocol 1187 operations and content. 1189 There are a number of data nodes defined in ietf-ospfv3-extended- 1190 lsa.yang module that are writable/creatable/deletable (i.e., config 1191 true, which is the default). These data nodes may be considered 1192 sensitive or vulnerable in some network environments. Write 1193 operations (e.g., edit-config) to these data nodes without proper 1194 protection can have a negative effect on network operations. For 1195 OSPFv3 Extended LSAs, the ability to disable OSPFv3 Extended LSA 1196 support result in a denial of service. 1198 Some of the readable data nodes in the ietf-ospfv3-extended-lsa.yang 1199 module may be considered sensitive or vulnerable in some network 1200 environments. It is thus important to control read access (e.g., via 1201 get, get-config, or notification) to these data nodes. The exposure 1202 of the Link State Database (LSDB) will expose the detailed topology 1203 of the network. This may be undesirable since both due to the fact 1204 that exposure may facilitate other attacks. Additionally, network 1205 operators may consider their topologies to be sensitive confidential 1206 data. 1208 6. IANA Considerations 1210 This document registers a URI in the IETF XML registry [RFC3688]. 1211 Following the format in [RFC3688], the following registration is 1212 requested to be made: 1214 URI: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1215 Registrant Contact: The IESG. 1216 XML: N/A, the requested URI is an XML namespace. 1218 This document registers a YANG module in the YANG Module Names 1219 registry [RFC6020]. 1221 name: ietf-ospfv3-extended-lsa 1222 namespace: urn:ietf:params:xml:ns:yang:ietf-ospfv3-extended-lsa 1223 prefix: ospfv3-e-lsa 1224 reference: RFC XXXX 1226 7. Acknowledgements 1228 This document was produced using Marshall Rose's xml2rfc tool. 1230 The YANG model was developed using the suite of YANG tools written 1231 and maintained by numerous authors. 1233 Thanks much to Tom Petch for his review and comments. 1235 8. References 1237 8.1. Normative References 1239 [I-D.ietf-ospf-yang] 1240 Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, 1241 "YANG Data Model for OSPF Protocol", draft-ietf-ospf- 1242 yang-29 (work in progress), October 2019. 1244 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1245 Requirement Levels", BCP 14, RFC 2119, 1246 DOI 10.17487/RFC2119, March 1997, 1247 . 1249 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 1250 DOI 10.17487/RFC3688, January 2004, 1251 . 1253 [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF 1254 for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008, 1255 . 1257 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 1258 the Network Configuration Protocol (NETCONF)", RFC 6020, 1259 DOI 10.17487/RFC6020, October 2010, 1260 . 1262 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1263 and A. Bierman, Ed., "Network Configuration Protocol 1264 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1265 . 1267 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 1268 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 1269 . 1271 [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration 1272 Protocol (NETCONF) Access Control Model", RFC 6536, 1273 DOI 10.17487/RFC6536, March 2012, 1274 . 1276 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", 1277 RFC 6991, DOI 10.17487/RFC6991, July 2013, 1278 . 1280 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 1281 RFC 7950, DOI 10.17487/RFC7950, August 2016, 1282 . 1284 [RFC8022] Lhotka, L. and A. Lindem, "A YANG Data Model for Routing 1285 Management", RFC 8022, DOI 10.17487/RFC8022, November 1286 2016, . 1288 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 1289 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 1290 . 1292 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1293 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1294 May 2017, . 1296 [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, 1297 "Common YANG Data Types for the Routing Area", RFC 8294, 1298 DOI 10.17487/RFC8294, December 2017, 1299 . 1301 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 1302 and R. Wilton, "Network Management Datastore Architecture 1303 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 1304 . 1306 [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for 1307 Routing Management (NMDA Version)", RFC 8349, 1308 DOI 10.17487/RFC8349, March 2018, 1309 . 1311 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 1312 F. Baker, "OSPFv3 Link State Advertisement (LSA) 1313 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 1314 2018, . 1316 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1317 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1318 . 1320 8.2. Informative References 1322 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 1323 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 1324 . 1326 Authors' Addresses 1328 Acee Lindem 1329 Cisco Systems 1330 301 Midenhall Way 1331 Cary, NC 27513 1333 EMail: acee@cisco.com 1335 Sharmila Palani 1336 Cisco Systems 1337 170 West Tasman Drive 1338 San Jose, CA 95134 1340 EMail: shpalani@cisco.com 1341 Yingzhen Qu 1342 Futurewei 1343 2330 Central Expressway 1344 Santa Clara, CA 95050 1345 USA 1347 EMail: yingzhen.qu@futurewei.com