diff --git a/experimental/ietf-extracted-YANG-modules/ietf-ac-ntw@2023-11-13.yang b/experimental/ietf-extracted-YANG-modules/ietf-ac-ntw@2023-11-13.yang
index b9b8ba5ef..e6eac3b7a 100644
--- a/experimental/ietf-extracted-YANG-modules/ietf-ac-ntw@2023-11-13.yang
+++ b/experimental/ietf-extracted-YANG-modules/ietf-ac-ntw@2023-11-13.yang
@@ -459,7 +459,6 @@ module ietf-ac-ntw {
"When the addresses are allocated by DHCP or other
dynamic means local to the infrastructure.";
choice address-assign {
- default "number";
description
"A choice for how IPv4 addresses are assigned.";
case number {
@@ -601,13 +600,11 @@ module ietf-ac-ntw {
"When the addresses are allocated by DHCP or other
dynamic means local to the infrastructure.";
choice address-assign {
- default "number";
description
"A choice for how IPv6 addresses are assigned.";
case number {
leaf number-of-dynamic-address {
type uint16;
- default "1";
description
"Specifies the number of IP addresses to be
assigned to the customer on this access.";
@@ -794,7 +791,6 @@ module ietf-ac-ntw {
}
leaf as-override {
type boolean;
- default "false";
description
"Defines whether ASN override is enabled, i.e., replacing the
ASN of the customer specified in the AS_PATH attribute with
@@ -802,7 +798,6 @@ module ietf-ac-ntw {
}
leaf allow-own-as {
type uint8;
- default "0";
description
"If set, specifies the maximum number of occurrences of the
provider's ASN that are permitted within the AS_PATH
@@ -810,7 +805,6 @@ module ietf-ac-ntw {
}
leaf prepend-global-as {
type boolean;
- default "false";
description
"In some situations, the ASN that is provided at the node
level may be distinct from the ASN configured at the AC.
@@ -822,7 +816,6 @@ module ietf-ac-ntw {
}
leaf send-default-route {
type boolean;
- default "false";
description
"Defines whether default routes can be advertised to a peer.
If set, the default routes are advertised to a peer.";
@@ -881,7 +874,6 @@ module ietf-ac-ntw {
"Controls the behavior when a prefix maximum is reached.";
leaf max-prefix {
type uint32;
- default "5000";
description
"Indicates the maximum number of BGP prefixes allowed in
the BGP session.
@@ -901,7 +893,6 @@ module ietf-ac-ntw {
range "0..100";
}
units "percent";
- default "75";
description
"When this value is reached, a warning notification will be
triggered.";
@@ -943,7 +934,6 @@ module ietf-ac-ntw {
range "0..21845";
}
units "seconds";
- default "30";
description
"This timer indicates the KEEPALIVE messages' frequency
between a PE and a BGP peer.
@@ -962,7 +952,6 @@ module ietf-ac-ntw {
range "0 | 3..65535";
}
units "seconds";
- default "90";
description
"Indicates the maximum number of seconds that may elapse
between the receipt of successive KEEPALIVE and/or UPDATE
@@ -1364,7 +1353,6 @@ module ietf-ac-ntw {
}
leaf metric {
type uint16;
- default "1";
description
"Metric of the sham link. It is used in the routing
state calculation and path selection.";
@@ -1410,7 +1398,6 @@ module ietf-ac-ntw {
}
leaf metric {
type uint16;
- default "1";
description
"Metric of the PE-CE link. It is used in the routing
state calculation and path selection.";
@@ -1429,7 +1416,6 @@ module ietf-ac-ntw {
interface.";
}
}
- default "active";
description
"IS-IS interface mode type.";
}
@@ -1495,13 +1481,11 @@ module ietf-ac-ntw {
type uint8 {
range "1..254";
}
- default "100";
description
"Sets the local priority of the VRRP speaker.";
}
leaf ping-reply {
type boolean;
- default "false";
description
"Controls whether the VRRP speaker should reply to ping
requests.";
@@ -1520,14 +1504,12 @@ module ietf-ac-ntw {
type identityref {
base vpn-common:bfd-session-type;
}
- default "vpn-common:classic-bfd";
description
"Specifies the BFD session type.";
}
leaf desired-min-tx-interval {
type uint32;
units "microseconds";
- default "1000000";
description
"The minimum interval between transmissions of BFD Control
packets, as desired by the operator.";
@@ -1538,7 +1520,6 @@ module ietf-ac-ntw {
leaf required-min-rx-interval {
type uint32;
units "microseconds";
- default "1000000";
description
"The minimum interval between received BFD Control packets
that the PE should support.";
@@ -1550,7 +1531,6 @@ module ietf-ac-ntw {
type uint8 {
range "1..255";
}
- default "3";
description
"Specifies the detection multiplier that is transmitted to a
BFD peer.
@@ -1626,7 +1606,6 @@ module ietf-ac-ntw {
"Container for AC encryption.";
leaf enabled {
type boolean;
- default "false";
description
"If set to 'true', traffic encryption on the connection is
required. Otherwise, it is disabled.";
diff --git a/experimental/ietf-extracted-YANG-modules/ietf-ac-svc@2023-11-13.yang b/experimental/ietf-extracted-YANG-modules/ietf-ac-svc@2023-11-13.yang
index fe2ff9a07..436a01955 100644
--- a/experimental/ietf-extracted-YANG-modules/ietf-ac-svc@2023-11-13.yang
+++ b/experimental/ietf-extracted-YANG-modules/ietf-ac-svc@2023-11-13.yang
@@ -88,6 +88,7 @@ module ietf-ac-svc {
description
"Defines a reference to an attachment circuit profile.";
}
+
typedef encryption-profile-reference {
type leafref {
path
@@ -424,6 +425,7 @@ module ietf-ac-svc {
uses ac-common:isis-authentication;
uses vpn-common:service-status;
}
+
// RIP Service
grouping rip-svc {
@@ -840,6 +842,11 @@ module ietf-ac-svc {
if-feature "vpn-common:bfd";
description
"Container for BFD.";
+ leaf profile {
+ type bfd-profile-reference;
+ description
+ "Points to a BFD profile.";
+ }
uses ac-common:bfd;
uses vpn-common:service-status;
}
@@ -853,6 +860,51 @@ module ietf-ac-svc {
description
"AC-specific bandwith parameters.";
uses bandwidth;
+ container qos {
+ if-feature "vpn-common:qos";
+ description
+ "QoS configuration.";
+ container qos-profiles {
+ description
+ "QoS profile configuration.";
+ list qos-profile {
+ key "profile";
+ description
+ "Points to a QoS profile.";
+ leaf profile {
+ type qos-profile-reference;
+ description
+ "QoS profile to be used.";
+ }
+ leaf direction {
+ type identityref {
+ base vpn-common:qos-profile-direction;
+ }
+ description
+ "The direction to which the QoS profile
+ is applied.";
+ }
+ }
+ }
+ }
+ container access-control-list {
+ description
+ "Container for the Access Control List (ACL).";
+ container acl-profiles {
+ description
+ "ACL profile configuration.";
+ list acl-profile {
+ key "profile";
+ description
+ "Points to an ACL profile.";
+ leaf profile {
+ type forwarding-profile-reference;
+ description
+ "Forwarding profile to be used.";
+ }
+ }
+ }
+ }
}
}
@@ -928,14 +980,14 @@ module ietf-ac-svc {
description
"A reference to an AC profile.";
}
- leaf ac-bundle-ref {
+ leaf ac-parent-ref {
type ac-svc:attachment-circuit-reference;
description
- "Specifies the AC bundle that is inherited by an AC.
- AC bundles are used, e.g., in contexts where dynamic
- terminating points are managed while stable AC reference
- are exposed to services that make use of these dynamic
- ACs.";
+ "Specifies the parent AC that is inherited by an AC.
+ In contexts where dynamic terminating points are
+ bound to the same AC, a parent AC with stable
+ inforamtion is created with a set of child AC
+ that trackes dynamic informaiton.";
}
list group {
key "group-id";
diff --git a/experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-11-19.yang b/experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-12-01.yang
similarity index 70%
rename from experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-11-19.yang
rename to experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-12-01.yang
index 61355f035..d4649106b 100644
--- a/experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-11-19.yang
+++ b/experimental/ietf-extracted-YANG-modules/ietf-ospf-sr@2023-12-01.yang
@@ -1,7 +1,6 @@
module ietf-ospf-sr {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-ospf-sr";
-
prefix ospf-sr;
import ietf-inet-types {
@@ -9,70 +8,61 @@ module ietf-ospf-sr {
reference
"RFC 6991 - Common YANG Data Types";
}
-
import ietf-yang-types {
prefix yang;
reference
"RFC 6991 - Common YANG Data Types";
}
-
import ietf-routing-types {
prefix rt-types;
reference
"RFC 8294 - Common YANG Data Types for the Routing Area";
}
-
import ietf-routing {
prefix rt;
reference
"RFC 8349 - A YANG Data Model for Routing
Management (NMDA Version)";
}
-
import ietf-segment-routing-common {
prefix sr-cmn;
reference
"RFC 9020 - YANG Data Model for Segment Routing";
}
-
import ietf-segment-routing-mpls {
prefix sr-mpls;
reference
"RFC 9020 - YANG Data Model for Segment Routing";
}
-
import ietf-ospf {
prefix ospf;
reference
"RFC 9129 - YANG Data Model for the OSPF Protocol";
}
-
import ietf-ospfv3-extended-lsa {
- prefix "ospfv3-e-lsa";
+ prefix ospfv3-e-lsa;
}
organization
"IETF LSR - Link State Routing Working Group";
-
contact
- "WG Web:
- WG List:
-
- Author: Yingzhen Qu
-
- Author: Acee Lindem
-
- Author: Derek Yeung
-
- Author: Jeffrey Zhang
-
- Author: Ing-Wher Chen
- ";
-
+ "WG Web:
+ WG List:
+
+ Author: Yingzhen Qu
+
+ Author: Acee Lindem
+
+ Author: Derek Yeung
+
+ Author: Jeffrey Zhang
+
+ Author: Ing-Wher Chen
+ ";
description
"This YANG module defines the generic configuration
- and operational state for OSPF Segment Routing, which is
- common across all of the vendor implementations. It is
+ and operational state for OSPF Segment Routing (SR), which
+ is common across all of the vendor implementations. It is
intended that the module will be extended by vendors to
define vendor-specific OSPF Segment Routing configuration
and operational parameters and policies.
@@ -102,10 +92,10 @@ module ietf-ospf-sr {
This version of this YANG module is part of RFC XXXX;
see the RFC itself for full legal notices.";
+ reference
+ "RFC XXXX";
- reference "RFC XXXX";
-
- revision 2023-11-19 {
+ revision 2023-12-01 {
description
"Initial revision.";
reference
@@ -125,12 +115,12 @@ module ietf-ospf-sr {
computation using segment routing.";
reference
"draft-ietf-rtgwg-segment-routing-ti-lfa -
- Topology Independent Fast Reroute using Segment Routing";
+ Topology-Independent Fast Reroute using Segment Routing";
}
identity prefix-sid-bit {
description
- "Base identity for prefix sid sub-tlv bits.";
+ "Base identity for prefix SID sub-TLV bits.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
RFC 8666: OSPFv3 Extensions for Segment Routing";
@@ -182,13 +172,13 @@ module ietf-ospf-sr {
identity adj-sid-bit {
description
- "Base identity for adj sid sub-tlv bits.";
+ "Base identity for Adj-SID sub-TLV bits.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
RFC 8666: OSPFv3 Extensions for Segment Routing";
}
- identity b-bit {
+ identity b-bit {
base adj-sid-bit;
description
"Backup flag.";
@@ -219,8 +209,10 @@ module ietf-ospf-sr {
}
/* Groupings */
+
grouping sid-sub-tlv {
- description "SID/Label sub-TLV grouping.";
+ description
+ "SID/Label sub-TLV grouping.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 6)";
@@ -238,77 +230,92 @@ module ietf-ospf-sr {
}
grouping ospfv2-prefix-sid-sub-tlvs {
- description "Prefix Segment ID (SID) sub-TLVs.";
+ description
+ "Prefix Segment ID (SID) sub-TLVs.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 6)";
- container prefix-sid-sub-tlvs{
- description "Prefix SID sub-TLV.";
+ container prefix-sid-sub-tlvs {
+ description
+ "Prefix SID sub-TLV.";
list prefix-sid-sub-tlv {
- description "Prefix SID sub-TLV.";
+ description
+ "Prefix SID sub-TLV.";
container prefix-sid-flags {
leaf-list bits {
type identityref {
base prefix-sid-bit;
}
description
- "Prefix SID Sub-TLV flag bits list.";
+ "Prefix SID Sub-TLV bits.";
}
- description "Segment Identifier (SID) Flags.";
+ description
+ "Segment Identifier (SID) Flags.";
}
leaf mt-id {
type uint8;
- description "Multi-topology ID.";
+ description
+ "Multi-topology ID.";
}
leaf algorithm {
type identityref {
base sr-cmn:prefix-sid-algorithm;
}
description
- "The algorithm associated with the prefix-SID.";
+ "Algorithm associated with the prefix-SID.";
}
leaf sid {
type uint32;
- description "An index or label.";
+ description
+ "Index or label.";
}
}
}
}
grouping ospfv2-extended-prefix-range-tlvs {
- description "Extended prefix range TLV grouping.";
+ description
+ "Extended prefix range TLV grouping.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 4)";
container extended-prefix-range-tlvs {
- description "The list of range of prefixes.";
+ description
+ "List of range of prefixes.";
list extended-prefix-range-tlv {
- description "The range of prefixes.";
+ description
+ "Range of prefixes.";
leaf prefix-length {
type uint8;
- description "Length of prefix in bits.";
+ description
+ "Length of prefix in bits.";
}
leaf af {
type uint8;
- description "Address family for the prefix.";
+ description
+ "Address family for the prefix.";
}
leaf range-size {
type uint16;
- description "The number of prefixes covered by the
- advertisement.";
+ description
+ "Number of prefixes covered by the
+ advertisement.";
}
container extended-prefix-range-flags {
leaf-list bits {
type identityref {
base extended-prefix-range-bit;
}
- description "Extended prefix range TLV flags list.";
+ description
+ "Extended prefix range TLV bits.";
}
- description "Extended Prefix Range TLV flags.";
+ description
+ "Extended Prefix Range TLV flags.";
}
leaf prefix {
type inet:ip-prefix;
- description "Address prefix.";
+ description
+ "Address prefix.";
}
uses ospfv2-prefix-sid-sub-tlvs;
uses ospf:unknown-tlvs;
@@ -317,54 +324,63 @@ module ietf-ospf-sr {
}
grouping sr-algorithm-tlv {
- description "SR algorithm TLV grouping.";
+ description
+ "SR algorithm TLV grouping.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 3.1)";
container sr-algorithm-tlv {
- description "All SR algorithm TLVs.";
+ description
+ "All SR algorithm TLVs.";
leaf-list sr-algorithm {
type identityref {
base sr-cmn:prefix-sid-algorithm;
}
- description
- "The Segment Routing (SR) algorithms that the router is
+ description
+ "Segment Routing (SR) algorithms that the router is
currently using.";
}
}
}
grouping sid-range-tlvs {
- description "SID Range TLV grouping.";
+ description
+ "SID Range TLV grouping.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 3.2)";
container sid-range-tlvs {
- description "List of SID range TLVs.";
+ description
+ "List of SID range TLVs.";
list sid-range-tlv {
- description "SID range TLV.";
+ description
+ "SID range TLV.";
leaf range-size {
type rt-types:uint24;
- description "The SID range.";
+ description
+ "SID range.";
}
uses sid-sub-tlv;
}
}
}
-
grouping local-block-tlvs {
- description "The SR local block TLV contains the
- range of labels reserved for local SIDs.";
+ description
+ "The SR local block TLV contains the
+ range of labels reserved for local SIDs.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 3.3)";
container local-block-tlvs {
- description "List of SRLB TLVs.";
+ description
+ "List of SRLB TLVs.";
list local-block-tlv {
- description "SRLB TLV.";
+ description
+ "SRLB TLV.";
leaf range-size {
type rt-types:uint24;
- description "The SID range.";
+ description
+ "SID range.";
}
uses sid-sub-tlv;
}
@@ -372,80 +388,95 @@ module ietf-ospf-sr {
}
grouping srms-preference-tlv {
- description "The SRMS preference TLV is used to advertise
- a preference associated with the node that acts
- as an SR Mapping Server.";
+ description
+ "The SR Mapping Server (SRMS) preference TLV is
+ used to advertise a preference associated with
+ the node that acts as an SR Mapping Server.";
reference
"RFC 8665: OSPF Extensions for Segment Routing
(Section 3.4)";
container srms-preference-tlv {
- description "SRMS Preference TLV.";
+ description
+ "SRMS Preference TLV.";
leaf preference {
type uint8;
- description "SRMS preference TLV, value from 0 to 255.";
+ description
+ "SRMS preference TLV, value from 0 to 255.";
}
}
}
grouping ospfv3-prefix-sid-sub-tlvs {
- description "Prefix Segment ID (SID) sub-TLVs.";
+ description
+ "Prefix Segment ID (SID) sub-TLVs.";
reference
"RFC 8666: OSPFv3 Extensions for Segment Routing
(Section 6)";
- container perfix-sid-sub-tlvs{
- description "Prefix SID sub-TLV.";
+ container prefix-sid-sub-tlvs {
+ description
+ "Prefix SID sub-TLV.";
list prefix-sid-sub-tlv {
- description "Prefix SID sub-TLV.";
+ description
+ "Prefix SID sub-TLV.";
container ospfv3-prefix-sid-flags {
leaf-list bits {
type identityref {
base ospf-sr:prefix-sid-bit;
}
description
- "Prefix SID Sub-TLV flag bits list.";
+ "Prefix SID sub-TLV bits.";
}
- description "Segment Identifier (SID) Flags.";
+ description
+ "Segment Identifier (SID) Flags.";
}
leaf algorithm {
type identityref {
- base sr-cmn:prefix-sid-algorithm;
+ base sr-cmn:prefix-sid-algorithm;
}
description
- "The algorithm associated with the prefix-SID.";
+ "Algorithm associated with the prefix-SID.";
}
leaf sid {
type uint32;
- description "An index or label.";
+ description
+ "Index or label.";
}
}
}
}
grouping ospfv3-extended-prefix-range-tlvs {
- description "Extended prefix range TLV grouping.";
+ description
+ "Extended prefix range TLV grouping.";
reference
"RFC 8666: OSPFv3 Extensions for Segment Routing
(Section 5)";
container ospfv3-extended-prefix-range-tlvs {
- description "The list of extended prefix range TLVs.";
+ description
+ "List of extended prefix range TLVs.";
list extended-prefix-range-tlv {
- description "The range of prefixes.";
+ description
+ "Range of prefixes.";
leaf prefix-length {
type uint8;
- description "Length of prefix in bits.";
+ description
+ "Length of prefix in bits.";
}
leaf af {
type uint8;
- description "Address family for the prefix.";
+ description
+ "Address family for the prefix.";
}
leaf range-size {
type uint16;
- description "The number of prefixes covered by the
- advertisement.";
+ description
+ "Number of prefixes covered by the
+ advertisement.";
}
leaf prefix {
type inet:ip-prefix;
- description "Address prefix.";
+ description
+ "Address prefix.";
}
uses ospfv3-prefix-sid-sub-tlvs;
uses ospf:unknown-tlvs;
@@ -454,70 +485,86 @@ module ietf-ospf-sr {
}
grouping ospfv3-adj-sid-sub-tlvs {
- description "Adjacency SID sub TLV grouping.";
+ description
+ "Adj-SID sub-TLV grouping.";
reference
"RFC 8666: OSPFv3 Extensions for Segment Routing
(Section 7)";
container adj-sid-sub-tlvs {
- description "Adjacency SID optional sub-TLVs.";
+ description
+ "Adj-SID optional sub-TLVs.";
list adj-sid-sub-tlv {
- description "List of Adjacency SID sub-TLVs.";
+ description
+ "List of Adj-SID sub-TLVs.";
container adj-sid-flags {
leaf-list bits {
type identityref {
base adj-sid-bit;
}
- description "Adj sid sub-tlv flags list.";
+ description
+ "Adj-SID sub-tlv bits.";
}
- description "Adj-sid sub-tlv flags.";
+ description
+ "Adj-sid sub-tlv flags.";
}
leaf weight {
type uint8;
- description "Weight used for load-balancing.";
+ description
+ "Weight used for load-balancing.";
}
leaf sid {
type uint32;
- description "Segment Identifier (SID) index/label.";
+ description
+ "Segment Identifier (SID) index/label.";
}
}
}
}
grouping ospfv3-lan-adj-sid-sub-tlvs {
- description "LAN adj-sid sub TLV grouping.";
+ description
+ "LAN Adj-SID sub-TLV grouping.";
reference
"RFC 8666: OSPFv3 Extensions for Segment Routing
(Section 7)";
container lan-adj-sid-sub-tlvs {
- description "LAN Adjacency SID optional sub-TLVs.";
+ description
+ "LAN Adj-SID optional sub-TLVs.";
list lan-adj-sid-sub-tlv {
- description "List of LAN adjacency SID sub-TLVs.";
+ description
+ "List of LAN Adj-SID sub-TLVs.";
container lan-adj-sid-flags {
leaf-list bits {
type identityref {
base adj-sid-bit;
}
- description "LAN adj sid sub-tlv flags list.";
+ description
+ "LAN Adj-SID sub-TLV bits.";
}
- description "LAN adj-sid sub-tlv flags.";
+ description
+ "LAN Adj-SID sub-TLV flags.";
}
leaf weight {
type uint8;
- description "Weight used for load-balancing.";
+ description
+ "Weight used for load-balancing.";
}
leaf neighbor-router-id {
type yang:dotted-quad;
- description "Neighbor router ID.";
+ description
+ "Neighbor router ID.";
}
leaf sid {
type uint32;
- description "Segment Identifier (SID) index/label.";
+ description
+ "Segment Identifier (SID) index/label.";
}
}
}
}
/* Configuration */
+
augment "/rt:routing/rt:control-plane-protocols"
+ "/rt:control-plane-protocol/ospf:ospf" {
when "../rt:type = 'ospf:ospfv2' or "
@@ -530,7 +577,7 @@ module ietf-ospf-sr {
with segment routing.";
uses sr-mpls:sr-control-plane;
container protocol-srgb {
- if-feature sr-mpls:protocol-srgb;
+ if-feature "sr-mpls:protocol-srgb";
uses sr-cmn:srgb;
description
"Per-protocol SRGB.";
@@ -549,7 +596,6 @@ module ietf-ospf-sr {
description
"This augments the OSPF protocol interface
configuration with segment routing.";
-
uses sr-mpls:igp-interface;
}
@@ -564,13 +610,12 @@ module ietf-ospf-sr {
}
description
"This augments the OSPF protocol IP-FRR with TI-LFA.";
-
container ti-lfa {
- if-feature ti-lfa;
+ if-feature "ti-lfa";
leaf enable {
type boolean;
description
- "Enables TI-LFA computation.";
+ "Enable TI-LFA computation.";
}
container selection-tie-breakers {
container node-protection {
@@ -578,7 +623,7 @@ module ietf-ospf-sr {
protection tie-breaker";
leaf priority {
type uint8;
- default 128;
+ default "128";
description
"Priority for node protection tie-breaker with
a lower priority being more preferred.";
@@ -594,7 +639,7 @@ module ietf-ospf-sr {
disjoint tie-breaker";
leaf priority {
type uint8;
- default 128;
+ default "128";
description
"Priority for SRLG disjoint tie-breaker with
a lower priority being more preferred.";
@@ -611,7 +656,7 @@ module ietf-ospf-sr {
respective priorities for the TI-LFA computation.";
}
description
- "Topology Independent Loop Free Alternate
+ "Topology-Independent Loop Free Alternate
(TI-LFA) support.";
}
}
@@ -626,11 +671,11 @@ module ietf-ospf-sr {
"This augments the OSPF routing protocol when used.";
}
description
- "This augments the OSPF protocol IP-FRR with remote LFA.";
+ "This augments the OSPF protocol IP-FRR with remote LFA.";
leaf use-segment-routing-path {
if-feature "remote-lfa-sr";
type boolean;
- default false;
+ default "false";
description
"Force remote LFA to use segment routing path instead of LDP
path. The value of this leaf is in effect only when
@@ -639,6 +684,7 @@ module ietf-ospf-sr {
}
/* Database */
+
augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/ospf:area/"
@@ -653,13 +699,12 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix LSA
+ "SR-specific TLVs for OSPFv2 extended prefix LSA
in type 9 opaque LSA.";
-
uses ospfv2-extended-prefix-range-tlvs;
}
- augment "/rt:routing/"
+ augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/"
+ "ospf:area/ospf:database/"
@@ -673,9 +718,8 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix LSA
+ "SR-specific TLVs for OSPFv2 extended prefix LSA
in type 10 opaque LSA.";
-
uses ospfv2-extended-prefix-range-tlvs;
}
@@ -692,9 +736,8 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix LSA
+ "SR-specific TLVs for OSPFv2 extended prefix LSA
in type 11 opaque LSA.";
-
uses ospfv2-extended-prefix-range-tlvs;
}
@@ -712,7 +755,7 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix TLV
+ "SR-specific TLVs for OSPFv2 extended prefix TLV
in type 9 opaque LSA.";
uses ospfv2-prefix-sid-sub-tlvs;
}
@@ -731,7 +774,7 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix TLV
+ "SR-specific TLVs for OSPFv2 extended prefix TLV
in type 10 opaque LSA.";
uses ospfv2-prefix-sid-sub-tlvs;
}
@@ -749,11 +792,10 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended prefix TLV
+ "SR-specific TLVs for OSPFv2 extended prefix TLV
in type 11 opaque LSA.";
uses ospfv2-prefix-sid-sub-tlvs;
}
-
augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/"
@@ -768,65 +810,78 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 extended link TLV
+ "SR-specific TLVs for OSPFv2 extended link TLV
in type 10 opaque LSA.";
-
container adj-sid-sub-tlvs {
- description "Adjacency SID optional sub-TLVs.";
+ description
+ "Adj-SID optional sub-TLVs.";
list adj-sid-sub-tlv {
- description "List of Adjacency SID sub-TLVs.";
+ description
+ "List of Adj-SID sub-TLVs.";
container adj-sid-flags {
leaf-list bits {
type identityref {
base adj-sid-bit;
}
- description "Adj sid sub-tlv flags list.";
+ description
+ "Adj-SID sub-TLV bits.";
}
- description "Adj-sid sub-tlv flags.";
+ description
+ "Adj-sid sub-TLV flags.";
}
leaf mt-id {
type uint8;
- description "Multi-topology ID.";
+ description
+ "Multi-topology ID.";
}
leaf weight {
type uint8;
- description "Weight used for load-balancing.";
+ description
+ "Weight used for load-balancing.";
}
leaf sid {
type uint32;
- description "Segment Identifier (SID) index/label.";
+ description
+ "Segment Identifier (SID) index/label.";
}
}
}
-
container lan-adj-sid-sub-tlvs {
- description "LAN Adjacency SID optional sub-TLVs.";
+ description
+ "LAN Adj-SID optional sub-TLVs.";
list lan-adj-sid-sub-tlv {
- description "List of LAN adjacency SID sub-TLVs.";
+ description
+ "List of LAN Adj-SID sub-TLVs.";
container lan-adj-sid-flags {
leaf-list bits {
type identityref {
base adj-sid-bit;
}
- description "LAN adj sid sub-tlv flags list.";
+ description
+ "LAN Adj-SID sub-TLV bits.";
}
- description "LAN adj-sid sub-tlv flags.";
+ description
+ "LAN Adj-SID sub-TLV flags.";
}
leaf mt-id {
type uint8;
- description "Multi-topology ID.";
+ description
+ "Multi-topology ID.";
}
leaf weight {
type uint8;
- description "Weight used for load-balancing.";
+ description
+ "Weight used for load-balancing.";
}
leaf neighbor-router-id {
type yang:dotted-quad;
- description "Neighbor router ID.";
+ description
+ "Neighbor router ID.";
}
leaf sid {
type uint32;
- description "Segment Identifier (SID) index/label.";
+ description
+ "Segment Identifier (SID) index/label.";
}
}
}
@@ -845,8 +900,7 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 type 9 opaque LSA.";
-
+ "SR-specific TLVs for OSPFv2 type 9 opaque LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
uses local-block-tlvs;
@@ -865,10 +919,8 @@ module ietf-ospf-sr {
description
"This augmentation is only valid for OSPFv2.";
}
-
description
- "SR specific TLVs for OSPFv2 type 10 opaque LSA.";
-
+ "SR-specific TLVs for OSPFv2 type 10 opaque LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
uses local-block-tlvs;
@@ -887,8 +939,7 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv2.";
}
description
- "SR specific TLVs for OSPFv2 type 11 opaque LSA.";
-
+ "SR-specific TLVs for OSPFv2 type 11 opaque LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
uses local-block-tlvs;
@@ -896,6 +947,7 @@ module ietf-ospf-sr {
}
/* Segment Routing Capabilities */
+
augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:database/"
@@ -908,7 +960,7 @@ module ietf-ospf-sr {
"This augmentation is only valid for OSPFv3.";
}
description
- "SR specific TLVs for OSPFv3 Router Information
+ "SR-specific TLVs for OSPFv3 Router Information
opaque LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
@@ -928,10 +980,8 @@ module ietf-ospf-sr {
description
"This augmentation is only valid for OSPFv3.";
}
-
description
- "SR specific TLVs for OSPFv3 Router Information LSA.";
-
+ "SR-specific TLVs for OSPFv3 Router Information LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
uses local-block-tlvs;
@@ -950,10 +1000,8 @@ module ietf-ospf-sr {
description
"This augmentation is only valid for OSPFv3.";
}
-
description
- "SR specific TLVs for OSPFv3 Router Information LSA.";
-
+ "SR-specific TLVs for OSPFv3 Router Information LSA.";
uses sr-algorithm-tlv;
uses sid-range-tlvs;
uses local-block-tlvs;
@@ -961,14 +1009,15 @@ module ietf-ospf-sr {
}
/* OSPFv3 Extended Prefix Range TLV */
+
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-intra-area-prefix" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-intra-area-prefix" {
when "../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";
@@ -979,13 +1028,13 @@ module ietf-ospf-sr {
}
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-inter-area-prefix" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-inter-area-prefix" {
when "../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";
@@ -996,13 +1045,13 @@ module ietf-ospf-sr {
}
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:database/"
- + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/"
- + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-as-external" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:database/"
+ + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/"
+ + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-as-external" {
when "'ospf:../../../../../../../../../"
- + "rt:type' = 'ospf:ospfv3'" {
+ + "rt:type' = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3.";
}
@@ -1012,13 +1061,13 @@ module ietf-ospf-sr {
}
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-nssa" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-nssa" {
when "'ospf:../../../../../../../../../"
- + "rt:type' = 'ospf:ospfv3'" {
+ + "rt:type' = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3.";
}
@@ -1028,16 +1077,18 @@ module ietf-ospf-sr {
}
/* Prefix SID Sub-TLV in Intra-Area Prefix TLV */
+
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:interfaces/"
- + "ospf:interface/"
- + "ospf:database/ospf:link-scope-lsa-type/ospf:link-scope-lsas/"
- + "ospf:link-scope-lsa/ospf:version/ospf:ospfv3/ospf:ospfv3/"
- + "ospf:body/ospfv3-e-lsa:e-link/"
- + "ospfv3-e-lsa:e-link-tlvs/ospfv3-e-lsa:intra-prefix-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:interfaces/"
+ + "ospf:interface/"
+ + "ospf:database/ospf:link-scope-lsa-type/"
+ + "ospf:link-scope-lsas/ospf:link-scope-lsa/"
+ + "ospf:version/ospf:ospfv3/ospf:ospfv3/"
+ + "ospf:body/ospfv3-e-lsa:e-link/"
+ + "ospfv3-e-lsa:e-link-tlvs/ospfv3-e-lsa:intra-prefix-tlv" {
when "../../../../../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";
@@ -1048,15 +1099,15 @@ module ietf-ospf-sr {
}
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-intra-area-prefix/"
- + "ospfv3-e-lsa:e-intra-prefix-tlvs/"
- + "ospfv3-e-lsa:intra-prefix-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-intra-area-prefix/"
+ + "ospfv3-e-lsa:e-intra-prefix-tlvs/"
+ + "ospfv3-e-lsa:intra-prefix-tlv" {
when "../../../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";
@@ -1067,16 +1118,17 @@ module ietf-ospf-sr {
}
/* Prefix SID Sub-TLV in Inter-Area Prefix TLV */
+
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-inter-area-prefix/"
- + "ospfv3-e-lsa:e-inter-prefix-tlvs/"
- + "ospfv3-e-lsa:inter-prefix-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-inter-area-prefix/"
+ + "ospfv3-e-lsa:e-inter-prefix-tlvs/"
+ + "ospfv3-e-lsa:inter-prefix-tlv" {
when "../../../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";
@@ -1087,16 +1139,17 @@ module ietf-ospf-sr {
}
/* Prefix SID Sub-TLV in External Prefix TLV */
+
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:database/"
- + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/"
- + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-as-external/"
- + "ospfv3-e-lsa:e-external-tlvs/"
- + "ospfv3-e-lsa:external-prefix-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:database/"
+ + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/"
+ + "ospf:as-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-as-external/"
+ + "ospfv3-e-lsa:e-external-tlvs/"
+ + "ospfv3-e-lsa:external-prefix-tlv" {
when "'ospf:../../../../../../../../../"
- + "rt:type' = 'ospf:ospfv3'" {
+ + "rt:type' = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3.";
}
@@ -1106,15 +1159,15 @@ module ietf-ospf-sr {
}
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-nssa/"
- + "ospfv3-e-lsa:e-external-tlvs/"
- + "ospfv3-e-lsa:external-prefix-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-nssa/"
+ + "ospfv3-e-lsa:e-external-tlvs/"
+ + "ospfv3-e-lsa:external-prefix-tlv" {
when "'ospf:../../../../../../../../../"
- + "rt:type' = 'ospf:ospfv3'" {
+ + "rt:type' = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3.";
}
@@ -1124,15 +1177,16 @@ module ietf-ospf-sr {
}
/* Adj-SID sub-TLV */
+
augment "/rt:routing/"
- + "rt:control-plane-protocols/rt:control-plane-protocol/"
- + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
- + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
- + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
- + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-router/"
- + "ospfv3-e-lsa:e-router-tlvs/ospfv3-e-lsa:link-tlv" {
+ + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ + "ospf:ospf/ospf:areas/ospf:area/ospf:database/"
+ + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ + "ospf:area-scope-lsa/ospf:version/ospf:ospfv3/"
+ + "ospf:ospfv3/ospf:body/ospfv3-e-lsa:e-router/"
+ + "ospfv3-e-lsa:e-router-tlvs/ospfv3-e-lsa:link-tlv" {
when "../../../../../../../../../../../../"
- + "rt:type = 'ospf:ospfv3'" {
+ + "rt:type = 'ospf:ospfv3'" {
description
"This augmentation is only valid for OSPFv3
E-Router LSAs";