aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang')
-rw-r--r--src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang1446
1 files changed, 0 insertions, 1446 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang b/src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang
deleted file mode 100644
index 6b6f4ac..0000000
--- a/src/plugins/yang/openconfig/openconfig-mpls-rsvp.yang
+++ /dev/null
@@ -1,1446 +0,0 @@
-module openconfig-mpls-rsvp {
-
- yang-version "1";
-
- // namespace
- namespace "http://openconfig.net/yang/rsvp";
-
- prefix "oc-rsvp";
-
- // import some basic types
- import openconfig-inet-types { prefix inet; }
- import openconfig-mpls-types { prefix oc-mplst; }
- import openconfig-yang-types { prefix yang; }
- import openconfig-types { prefix oc-types; }
- import openconfig-extensions { prefix oc-ext; }
- import openconfig-interfaces { prefix oc-if; }
-
-
- // meta
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- netopenconfig@googlegroups.com";
-
- description
- "Configuration for RSVP-TE signaling, including global protocol
- parameters and LSP-specific configuration for constrained-path
- LSPs";
-
- oc-ext:openconfig-version "3.0.0";
-
- revision "2018-07-02" {
- description
- "Add new RSVP-TE statistics, remove associated-rsvp-session
- leaf. Remove use of date-and-time.";
- reference "3.0.0";
- }
-
- revision "2018-06-16" {
- description
- "Included attributes for base LDP configuration.";
- reference "2.6.0";
- }
-
- revision "2018-06-13" {
- description
- "Add ttl-propagation to global MPLS config";
- reference "2.5.0";
- }
-
- revision "2018-06-05" {
- description
- "Fixed bugs in when statements on RSVP-TE attributes";
- reference "2.4.2";
- }
-
- revision "2017-08-24" {
- description
- "Minor formatting fixes.";
- reference "2.4.1";
- }
-
- revision "2017-06-21" {
- description
- "Add TC bits typedef.";
- reference "2.4.0";
- }
-
- revision "2017-03-22" {
- description
- "Add RSVP calculated-absolute-subscription-bw";
- reference "2.3.0";
- }
-
- revision "2017-01-26" {
- description
- "Add RSVP Tspec, clarify units for RSVP, remove unused LDP";
- reference "2.2.0";
- }
-
- revision "2016-12-15" {
- description
- "Add additional MPLS parameters";
- reference "2.1.0";
- }
-
- revision "2016-09-01" {
- description
- "Revisions based on implementation feedback";
- reference "2.0.0";
- }
-
- revision "2016-08-08" {
- description
- "Public release of MPLS models";
- reference "1.0.1";
- }
-
- // grouping statements
-
- grouping mpls-rsvp-soft-preemption-config {
- description
- "Configuration for MPLS soft preemption";
- leaf enable {
- type boolean;
- default false;
- description
- "Enables soft preemption on a node.";
- }
-
- leaf soft-preemption-timeout {
- type uint16 {
- range 0..max;
- }
- default 30;
- description
- "Timeout value for soft preemption to revert
- to hard preemption. The default timeout for
- soft-preemption is 30 seconds - after which
- the local system reverts to hard pre-emption.";
- reference "RFC5712 MPLS-TE soft preemption";
- }
- }
-
- grouping mpls-rsvp-soft-preemption {
- description
- "Top level group for MPLS soft preemption";
- container soft-preemption {
- description
- "Protocol options relating to RSVP
- soft preemption";
- container config {
- description
- "Configuration parameters relating to RSVP
- soft preemption support";
- uses mpls-rsvp-soft-preemption-config;
- }
- container state {
- config false;
- description
- "State parameters relating to RSVP
- soft preemption support";
- uses mpls-rsvp-soft-preemption-config;
- }
- }
- }
-
- grouping mpls-rsvp-hellos-config {
- description
- "RSVP protocol options configuration.";
-
- leaf hello-interval {
- type uint16 {
- range 1000..60000;
- }
- units milliseconds;
- default 9000;
- description
- "set the interval in ms between RSVP hello
- messages";
- reference
- "RFC 3209: RSVP-TE: Extensions to RSVP for
- LSP Tunnels.
- RFC 5495: Description of the Resource
- Reservation Protocol - Traffic-Engineered
- (RSVP-TE) Graceful Restart Procedures";
- }
-
- leaf refresh-reduction {
- type boolean;
- default true;
- description
- "enables all RSVP refresh reduction message
- bundling, RSVP message ID, reliable message delivery
- and summary refresh";
- reference
- "RFC 2961 RSVP Refresh Overhead Reduction
- Extensions";
- }
- }
-
- grouping mpls-rsvp-hellos {
- description
- "Top level grouping for RSVP hellos parameters";
- // TODO: confirm that the described semantics are supported
- // on various implementations. Finer grain configuration
- // will be vendor-specific
-
- container hellos {
- description
- "Top level container for RSVP hello parameters";
-
- container config {
- description
- "Configuration parameters relating to RSVP
- hellos";
- uses mpls-rsvp-hellos-config;
- }
- container state {
- config false;
- description
- "State information associated with RSVP hellos";
- uses mpls-rsvp-hellos-config;
- }
- }
- }
-
- grouping mpls-rsvp-subscription-config {
- description
- "RSVP subscription configuration";
-
- leaf subscription {
- type oc-types:percentage;
- description
- "percentage of the interface bandwidth that
- RSVP can reserve";
- }
- }
-
- grouping mpls-rsvp-subscription-state {
- description
- "Operational state parameters relating to the
- bandwidth subscription on an interface";
-
- leaf calculated-absolute-subscription-bw {
- type uint64;
- units "kbps";
- description
- "The calculated absolute value of the bandwidth
- which is reservable to RSVP-TE on the interface
- prior to any adjustments that may be made from
- external sources.";
- }
- }
-
- grouping mpls-rsvp-subscription {
- description
- "Top level group for RSVP subscription options";
-
- container subscription {
- description
- "Bandwidth percentage reservable by RSVP
- on an interface";
-
- container config {
- description
- "Configuration parameters relating to RSVP
- subscription options";
- uses mpls-rsvp-subscription-config;
- }
-
- container state {
- config false;
- description
- "State parameters relating to RSVP
- subscription options";
- uses mpls-rsvp-subscription-config;
- uses mpls-rsvp-subscription-state;
- }
- }
- }
-
- grouping mpls-rsvp-graceful-restart-config {
- description
- "Configuration parameters relating to RSVP Graceful-Restart";
-
- leaf enable {
- type boolean;
- default false;
- description
- "Enables graceful restart on the node.";
- }
-
- leaf restart-time {
- type uint32;
- description
- "Graceful restart time (seconds).";
- reference
- "RFC 5495: Description of the Resource
- Reservation Protocol - Traffic-Engineered
- (RSVP-TE) Graceful Restart Procedures";
- }
- leaf recovery-time {
- type uint32;
- description
- "RSVP state recovery time";
- }
- }
-
- grouping mpls-rsvp-graceful-restart {
- description
- "Top level group for RSVP graceful-restart
- parameters";
-
- container graceful-restart {
- description
- "Operational state and configuration parameters relating to
- graceful-restart for RSVP";
-
- container config {
- description
- "Configuration parameters relating to
- graceful-restart";
- uses mpls-rsvp-graceful-restart-config;
- }
-
- container state {
- config false;
- description
- "State information associated with
- RSVP graceful-restart";
- uses mpls-rsvp-graceful-restart-config;
- }
- }
- }
-
- grouping mpls-rsvp-authentication-config {
- description
- "RSVP authentication parameters container.";
-
- leaf enable {
- type boolean;
- default false;
- description
- "Enables RSVP authentication on the node.";
- }
-
- leaf authentication-key {
- type string {
- // Juniper supports 1..16 while
- // Cisco has a much bigger range, up to 60.
- length "1..32";
- }
- description
- "authenticate RSVP signaling
- messages";
- reference
- "RFC 2747: RSVP Cryptographic Authentication";
- }
- }
-
- grouping mpls-rsvp-authentication {
- description
- "Top level group for RSVP authentication,
- as per RFC2747";
-
- container authentication {
- description
- "Configuration and state parameters relating to RSVP
- authentication as per RFC2747";
-
- container config {
- description
- "Configuration parameters relating
- to authentication";
- uses mpls-rsvp-authentication-config;
- }
-
- container state {
- config false;
- description
- "State information associated
- with authentication";
- uses mpls-rsvp-authentication-config;
- }
- }
- }
-
- grouping mpls-rsvp-protection-config {
- description
- "RSVP facility (link/node) protection configuration";
-
- leaf link-protection-style-requested {
- type identityref {
- base oc-mplst:PROTECTION_TYPE;
- }
- default oc-mplst:LINK_NODE_PROTECTION_REQUESTED;
- description
- "Style of mpls frr protection desired:
- link, link-node, or unprotected";
- }
-
- leaf bypass-optimize-interval {
- type uint16;
- units seconds;
- description
- "interval between periodic optimization
- of the bypass LSPs";
- // note: this is interface specific on juniper
- // on iox, this is global. need to resolve.
- }
- // to be completed, things like enabling link protection,
- // optimization times, etc.
- }
-
- grouping mpls-rsvp-link-protection {
- description
- "Top level group for RSVP protection";
- container protection {
- description
- "link-protection (NHOP) related configuration";
-
- container config {
- description
- "Configuration for link-protection";
- uses mpls-rsvp-protection-config;
- }
-
- container state {
- config false;
- description
- "State for link-protection";
- uses mpls-rsvp-protection-config;
- }
- }
- }
-
- grouping mpls-rsvp-statistics {
- description
- "Top level grouping for RSVP protocol state";
-
- uses mpls-rsvp-protocol-state;
- }
-
- grouping rsvp-global {
- description
- "Global RSVP protocol configuration";
- container rsvp-te {
- description
- "RSVP-TE global signaling protocol configuration";
-
- uses mpls-rsvp-session-state;
-
- container neighbors {
- description
- "Configuration and state for RSVP neighbors connecting
- to the device";
-
- list neighbor {
- key "address";
-
- config false;
-
- description
- "List of RSVP neighbors of the local system";
-
- leaf address {
- type leafref {
- path "../state/address";
- }
- description
- "Reference to the address of the RSVP neighbor";
- }
-
- container state {
- config false;
- description
- "Operational state parameters relating to the
- RSVP neighbor";
- uses mpls-rsvp-neighbor-state;
- }
- }
- }
-
- container global {
- description
- "Platform wide RSVP configuration and state";
- uses mpls-rsvp-graceful-restart;
- uses mpls-rsvp-soft-preemption;
- uses mpls-rsvp-hellos;
-
- container state {
- config false;
- description
- "Platform wide RSVP state, including counters";
- // TODO - reconcile global and per-interface
- // protocol-related statistics
-
- container counters {
- config false;
- description
- "Platform wide RSVP statistics and counters";
- uses mpls-rsvp-global-protocol-state;
- uses mpls-rsvp-statistics;
-
- container errors {
- description
- "Error counters associated with the global RSVP-TE
- instance.";
- uses mpls-rsvp-error-counters;
- }
- }
- }
- }
-
- container interface-attributes {
- description
- "Attributes relating to RSVP-TE enabled interfaces";
-
- list interface {
- key "interface-id";
- description
- "list of per-interface RSVP configurations";
-
- leaf interface-id {
- type leafref {
- path "../config/interface-id";
- }
- description
- "reference to the interface-id data";
- }
-
-
- container config {
- description
- "Configuration of per-interface RSVP parameters";
- uses mpls-rsvp-interfaces-config;
- }
-
- container state {
- config false;
- description
- "Per-interface RSVP protocol and state information";
-
- uses mpls-rsvp-interfaces-state;
- uses mpls-rsvp-interfaces-config;
-
- container counters {
- config false;
- description
- "Interface specific RSVP statistics and counters";
- uses mpls-rsvp-protocol-state;
- uses mpls-rsvp-rate-limited-messages-state;
-
- container errors {
- description
- "Interface specific RSVP error counters";
- uses mpls-rsvp-error-counters;
- }
- }
- }
-
- uses oc-if:interface-ref;
- uses mpls-rsvp-interface-reservations;
- uses mpls-rsvp-hellos;
- uses mpls-rsvp-authentication;
- uses mpls-rsvp-subscription;
- uses mpls-rsvp-link-protection;
- }
- }
- }
- }
-
- grouping rsvp-p2p-tunnel-attributes-config {
- description
- "properties of RSVP point-to-point paths";
-
- leaf source {
- when "../signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type inet:ip-address;
- description
- "RSVP-TE tunnel source address";
- }
-
- leaf soft-preemption {
- when "../signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type boolean;
- default false;
- description
- "Enables RSVP soft-preemption on this LSP";
- }
-
- uses rsvp-priorities-tunnel-config;
- }
-
- grouping rsvp-priorities-tunnel-config {
- description
- "Configuration paramters related to RSVP-TE priorities for
- an LSP tunnel";
-
- leaf setup-priority {
- when "../signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type uint8 {
- range 0..7;
- }
- default 7;
- description
- "RSVP-TE preemption priority during LSP setup, lower is
- higher priority; default 7 indicates that LSP will not
- preempt established LSPs during setup";
- reference "RFC 3209 - RSVP-TE: Extensions to RSVP for
- LSP Tunnels";
- }
-
- leaf hold-priority {
- when "../signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type uint8 {
- range 0..7;
- }
- default 0;
- description
- "preemption priority once the LSP is established,
- lower is higher priority; default 0 indicates other LSPs
- will not preempt the LSPs once established";
- reference "RFC 3209 - RSVP-TE: Extensions to RSVP for
- LSP Tunnels";
- }
- }
-
- grouping rsvp-priorities-path-config {
- description
- "Configuration paramters related to RSVP-TE priorities on
- a primary/secondary path associated with an LSP.";
-
- leaf setup-priority {
- when "../../../../../" +
- "config/signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type uint8 {
- range 0..7;
- }
- default 7;
- description
- "RSVP-TE preemption priority during LSP setup, lower is
- higher priority; default 7 indicates that LSP will not
- preempt established LSPs during setup";
- reference "RFC 3209 - RSVP-TE: Extensions to RSVP for
- LSP Tunnels";
- }
-
- leaf hold-priority {
- when "../../../../../" +
- "config/signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type uint8 {
- range 0..7;
- }
- default 0;
- description
- "preemption priority once the LSP is established,
- lower is higher priority; default 0 indicates other LSPs
- will not preempt the LSPs once established";
- reference "RFC 3209 - RSVP-TE: Extensions to RSVP for
- LSP Tunnels";
- }
- }
-
- grouping rsvp-p2p-path-attributes-config {
- description
- "properties of RSPP point-to-point paths";
-
- uses rsvp-priorities-path-config;
-
- leaf retry-timer {
- when "../../../../../" +
- "config/signaling-protocol = 'PATH_SETUP_RSVP'" {
- description
- "When the signaling protocol is RSVP-TE ";
- }
- type uint16 {
- range 1..600;
- }
- units seconds;
- description
- "sets the time between attempts to establish the
- LSP";
- }
- }
-
- grouping mpls-rsvp-neighbor-state {
- description
- "State information for RSVP neighbors";
-
- leaf address {
- type inet:ip-address;
- description
- "Address of RSVP neighbor";
- }
-
- leaf detected-interface {
- type string;
- description
- "Interface where RSVP neighbor was detected";
- }
-
- leaf neighbor-status {
- type enumeration {
- enum UP {
- description
- "RSVP hello messages are detected from the neighbor";
- }
- enum DOWN {
- description
- "RSVP neighbor not detected as up, due to a
- communication failure or IGP notification
- the neighbor is unavailable";
- }
- }
- description
- "Enumuration of possible RSVP neighbor states";
- }
-
- leaf refresh-reduction {
- type boolean;
- description
- "Suppport of neighbor for RSVP refresh reduction";
- reference
- "RFC 2961 RSVP Refresh Overhead Reduction
- Extensions";
- }
-
- }
-
- grouping mpls-rsvp-session-state {
- description
- "State information for RSVP TE sessions";
-
- container sessions {
- description
- "Enclosing container for sessions";
-
- list session {
- key "local-index";
- config false;
-
- description
- "List of RSVP sessions";
-
- leaf local-index {
- type leafref {
- path "../state/local-index";
- }
- description
- "Reference to the local index for the RSVP
- session";
- }
-
- uses mpls-rsvp-record-route-object-top;
- uses mpls-rsvp-explicit-route-object-top;
-
- container state {
- description
- "Operational state parameters relating to the
- RSVP session";
-
- leaf local-index {
- type uint64;
- description
- "The index used to identify the RSVP session
- on the local network element. This index is
- generated by the device and is unique only
- to the local network element.";
- }
-
- leaf source-address {
- type inet:ip-address;
- description
- "Origin address of RSVP session";
- }
-
- leaf destination-address {
- type inet:ip-address;
- description
- "Destination address of RSVP session";
- }
-
- leaf tunnel-id {
- type uint16;
- description
- "The tunnel ID is an identifier used in the
- RSVP session, which remains constant over
- the life of the tunnel.";
- reference "RFC 3209";
- }
-
- leaf lsp-id {
- type uint16;
- description
- "The LSP ID distinguishes between two LSPs
- originated from the same headend, and is
- commonly used to distinguish RSVP sessions
- during make before break operations.";
- reference "RFC 3209";
- }
-
- leaf session-name {
- type string;
- description
- "The signaled name of this RSVP session.";
- }
-
- leaf status {
- type enumeration {
- enum UP {
- description
- "RSVP session is up";
- }
- enum DOWN {
- description
- "RSVP session is down";
- }
- }
- description
- "Enumeration of RSVP session states";
- }
-
- leaf type {
- type identityref {
- base oc-mplst:LSP_ROLE;
- }
- description
- "The type/role of the RSVP session, signifing
- the session's role on the current device, such as
- a transit session vs. an ingress session.";
- }
-
- leaf protection-requested {
- type identityref {
- base oc-mplst:PROTECTION_TYPE;
- }
- description
- "The type of protection requested for the RSVP session";
- }
-
- leaf label-in {
- type oc-mplst:mpls-label;
- description
- "Incoming MPLS label associated with this RSVP session";
- }
-
- leaf label-out {
- type oc-mplst:mpls-label;
- description
- "Outgoing MPLS label associated with this RSVP session";
- }
-
- container sender-tspec {
- description
- "Operational state statistics relating to the SENDER_TSPEC
- received for the RSVP session";
-
- leaf rate {
- type oc-types:ieeefloat32;
- units "Bps";
- description
- "The rate at which the head-end device generates traffic,
- expressed in bytes per second.";
- reference
- "RFC2210: RSVP with INTSERV";
- }
-
- leaf size {
- type oc-types:ieeefloat32;
- units "bytes per second";
- description
- "The size of the token bucket that is used to determine
- the rate at which the head-end device generates traffic,
- expressed in bytes per second.";
- reference
- "RFC2210: RSVP with INTSERV";
- }
-
- leaf peak-data-rate {
- type union {
- type oc-types:ieeefloat32;
- type enumeration {
- enum INFINITY {
- description
- "The head-end device has no maximum data rate.";
- }
- }
- }
- units "bytes per second";
- description
- "The maximum traffic generation rate that the head-end
- device sends traffic at.";
- reference
- "RFC2210: RSVP with INTSERV";
- }
- }
- }
- }
- }
- } //rsvp-session-state
-
- grouping mpls-rsvp-interfaces-config {
- description
- "RSVP configuration information relevant to an interface";
-
- leaf interface-id {
- type oc-if:interface-id;
- description
- "Identifier for the interface";
- }
- }
-
- grouping mpls-rsvp-interfaces-state {
- description
- "RSVP state information relevant to an interface";
-
- leaf max-link-bandwidth {
- type oc-mplst:bandwidth-kbps;
- description
- "The maximum link bandwidth expressed in kilobits
- per second. This value should be the same (other than
- the units) as the value that is advertised into the
- IGP traffic engineering database.";
- }
- }
-
- grouping mpls-rsvp-interface-reservations {
- description
- "Operational state related to interface bandwidth
- reservations";
-
- container bandwidth-reservations {
- description
- "Enclosing container for bandwidth reservation";
- list bandwidth-reservation {
- key "priority";
- config false;
- description
- "Available and reserved bandwidth by priority on
- the interface.";
-
- leaf priority {
- type leafref {
- path "../state/priority";
- }
- description "Reference to the RSVP priority level";
- }
-
- container state {
- description
- "Operational state parameters relating to a
- bandwidth reservation at a certain priority";
-
- leaf priority {
- type union {
- type uint8 {
- range 0..7;
- }
- type enumeration {
- enum ALL {
- description
- "The ALL keyword represents the overall
- state of the interface - i.e., the union
- of all of the priority levels";
- }
- }
- }
- description
- "RSVP priority level for LSPs traversing the interface";
- }
-
- leaf available-bandwidth {
- type oc-mplst:bandwidth-mbps;
- description
- "Bandwidth currently available with the priority level,
- or for the entire interface when the priority is set to
- ALL";
- }
-
- leaf reserved-bandwidth {
- type oc-mplst:bandwidth-mbps;
- description
- "Bandwidth currently reserved within the priority level,
- or the sum of all priority levels when the keyword is set
- to ALL";
- }
-
- leaf active-reservations-count {
- type yang:gauge64;
- description
- "Number of active RSVP reservations in the associated
- priority, or the sum of all reservations when the priority
- level is set to ALL";
- }
-
- leaf highwater-mark {
- type oc-mplst:bandwidth-mbps;
- description
- "Maximum bandwidth reserved on the interface within the
- priority, or across all priorities in the case that the
- priority level is set to ALL";
- }
- }
- }
- }
- }
-
- grouping mpls-rsvp-global-protocol-state {
- description
- "RSVP protocol statistics which may not apply
- on an interface, but are significant globally.";
-
- leaf path-timeouts {
- type yang:counter64;
- description
- "The number of Path State Blocks (PSBs) that
- have been timed out by the local system.";
- }
-
- leaf reservation-timeouts {
- type yang:counter64;
- description
- "The number of Reservation State Blocks (RSBs) that
- have been timed out by the local system.";
- }
-
- uses mpls-rsvp-rate-limited-messages-state;
- }
-
- grouping mpls-rsvp-rate-limited-messages-state {
- description
- "Common grouping for rate limit messages";
-
- leaf rate-limited-messages {
- type yang:counter64;
- description
- "RSVP messages dropped due to rate limiting";
- }
- }
-
- grouping mpls-rsvp-protocol-state {
- description
- "RSVP protocol statistics and message counters";
-
- leaf in-path-messages {
- type yang:counter64;
- description
- "Number of received RSVP Path messages";
- }
-
- leaf in-path-error-messages {
- type yang:counter64;
- description
- "Number of received RSVP Path Error messages";
- }
-
- leaf in-path-tear-messages {
- type yang:counter64;
- description
- "Number of received RSVP Path Tear messages";
- }
-
- leaf in-reservation-messages {
- type yang:counter64;
- description
- "Number of received RSVP Resv messages";
- }
-
- leaf in-reservation-error-messages {
- type yang:counter64;
- description
- "Number of received RSVP Resv Error messages";
- }
-
- leaf in-reservation-tear-messages {
- type yang:counter64;
- description
- "Number of received RSVP Resv Tear messages";
- }
-
- leaf in-hello-messages {
- type yang:counter64;
- description
- "Number of received RSVP hello messages";
- }
-
- leaf in-srefresh-messages {
- type yang:counter64;
- description
- "Number of received RSVP summary refresh messages";
- }
-
- leaf in-ack-messages {
- type yang:counter64;
- description
- "Number of received RSVP refresh reduction ack
- messages";
- }
-
- leaf out-path-messages {
- type yang:counter64;
- description
- "Number of sent RSVP PATH messages";
- }
-
- leaf out-path-error-messages {
- type yang:counter64;
- description
- "Number of sent RSVP Path Error messages";
- }
-
- leaf out-path-tear-messages {
- type yang:counter64;
- description
- "Number of sent RSVP Path Tear messages";
- }
-
- leaf out-reservation-messages {
- type yang:counter64;
- description
- "Number of sent RSVP Resv messages";
- }
-
- leaf out-reservation-error-messages {
- type yang:counter64;
- description
- "Number of sent RSVP Resv Error messages";
- }
-
- leaf out-reservation-tear-messages {
- type yang:counter64;
- description
- "Number of sent RSVP Resv Tear messages";
- }
-
- leaf out-hello-messages {
- type yang:counter64;
- description
- "Number of sent RSVP hello messages";
- }
-
- leaf out-srefresh-messages {
- type yang:counter64;
- description
- "Number of sent RSVP summary refresh messages";
- }
-
- leaf out-ack-messages {
- type yang:counter64;
- description
- "Number of sent RSVP refresh reduction ack messages";
- }
- }
-
- grouping mpls-rsvp-record-route-object-top {
- description
- "Top-level structure grouping for list of record route
- objects.";
-
- container record-route-objects {
- description
- "Enclosing container for MPLS RRO objects associated with the
- traffic engineered tunnel.";
-
- list record-route-object {
- key "index";
- config false;
-
- description
- "Read-only list of record route objects associated with the
- traffic engineered tunnel. Each entry in the list
- may contain a hop IP address, MPLS label allocated
- at the hop, and the flags associated with the entry.";
-
- leaf index {
- type leafref {
- path "../state/index";
- }
- description
- "Reference to the index of the record route object.
- The index is used to indicate the ordering of hops in
- the path.";
- }
-
- container state {
- config false;
-
- description
- "Information related to RRO objects. The hop, label, and
- optional flags are present for each entry in the list.";
-
- uses mpls-rsvp-record-route-object-state;
- }
- }
- }
- }
-
- grouping mpls-rsvp-record-route-object-state {
- description
- "Grouping to hold information relating to record route
- objects relevant to a traffic engineering LSP.";
-
- leaf index {
- type uint8;
- description
- "Index of object in the list. Used for ordering.";
- }
-
- leaf address {
- type inet:ip-address;
- description
- "IP router hop for RRO entry";
- }
-
- leaf reported-label {
- type oc-mplst:mpls-label;
- description
- "Label reported for RRO hop";
- }
-
- leaf reported-flags {
- type uint8;
- description
- "Subobject flags for MPLS label";
- }
- }
-
- grouping mpls-rsvp-explicit-route-object-top {
- description
- "Top-level structure for explicit-route objects.";
-
- container explicit-route-objects {
- description
- "Enclosing container for MPLS ERO objects associated
- with the traffic engineered tunnel.";
-
- list explicit-route-object {
- key "index";
-
- config false;
-
- description
- "Read-only list of explicit route objects associated with the
- traffic-engineered tunnel. Each entry in the list contains
- a hop IP address, and the MPLS label allocated at the hop.";
-
- leaf index {
- type leafref {
- path "../state/index";
- }
- description
- "Reference to the index of the entry in the explicit route
- object. The index is used to indicate the ordering of hops
- in the path.";
- }
-
- container state {
- config false;
- description
- "Information related to the ERO index.";
- uses mpls-rsvp-explicit-route-object-state;
- }
- }
- }
- }
-
- grouping mpls-rsvp-explicit-route-object-state {
- description
- "Grouping defining information related to an individual hop
- of an ERO.";
-
- leaf index {
- type uint64;
- description
- "Index of the entry in the ERO. Entries are ordered in
- ascending order from the source to destination of the
- LSP.";
- }
-
- leaf loose {
- type boolean;
- description
- "When set to true, indicates that the hop of the ERO is
- a loose hop within the explicit route. If unset, indicates
- that the hop must explicitly traverse the entity specified
- in the ERO hop as the next-entity.";
- }
-
- leaf type {
- type enumeration {
- enum IPV4 {
- description
- "The hop represents an IPv4 prefix.";
- reference "RFC3209";
- }
- enum IPV6 {
- description
- "The hop represents an IPv6 prefix.";
- reference "RFC3209";
- }
- enum ASN {
- description
- "The hop represents an autonomous system number.";
- reference "RFC3209";
- }
- enum ASN4 {
- description
- "The hop represents a 4-byte autonomous system number.";
- }
- enum LABEL {
- description
- "The hop represents an MPLS label.";
- reference "RFC3473";
- }
- enum UNNUMBERED_INTERFACE {
- description
- "The hop represents an unnumbered interface.";
- reference "RFC3477";
- }
- }
- description
- "The type of hop indicated by the ERO entry.";
- }
-
- leaf ip-prefix {
- type inet:ip-prefix;
- description
- "The IPv4 or IPv6 prefix indicated by the ERO. Specified
- only when the ERO hop is an IPv4 or IPv6 prefix.";
- }
-
- leaf asn {
- type inet:as-number;
- description
- "The autonomous system number indicated by the ERO. Specified
- only when the ERO hop is an 2 or 4-byte AS number.";
- }
-
- leaf label {
- type oc-mplst:mpls-label;
- description
- "The MPLS label specified in the ERO hop. Specified only when
- the hop is an MPLS label.";
- }
-
- leaf interface-id {
- type uint32;
- description
- "The interface ID for an unnumbered interface. Specified only
- when the ERO hop is a unnumbered interface.";
- }
- reference
- "RFC3477 - Signalling Unnumbered Links in Resource
- ReSerVation Protocol - Traffic Engineering (RSVP-TE)";
-
- }
-
- grouping mpls-rsvp-error-counters {
- description
- "Grouping containing definitions of leaves relating to
- errors in RSVP-TE. This grouping can be used in different
- contexts - e.g., per-RSVP-TE protocol instance, or per-
- interface such that the errors represented should
- correspond to the number of errors that have occurred for
- the context in which the grouping is used.";
-
- leaf authentication-fail {
- type yang:counter64;
- description
- "The number of packets received that have failed RSVP-TE
- authentication checks in the specified context.";
- }
-
- leaf bad-checksum {
- type yang:counter64;
- description
- "The number of packets received that have an incorrect RSVP-TE
- checksum in the context.";
- }
-
- leaf bad-packet-format {
- type yang:counter64;
- description
- "The number of packets received that were dropped due to being
- badly formed in the context.";
- }
-
- leaf bad-packet-length {
- type yang:counter64;
- description
- "The number of packets received that were dropped due to having
- an invalid length specified in the context.";
- }
-
- leaf out-of-order {
- type yang:counter64;
- description
- "The number of messages received out of order in the context.";
- }
-
- leaf received-nack {
- type yang:counter64;
- description
- "The number of NACK RESV messages received in the context.";
- }
-
- leaf transmit-failure {
- type yang:counter64;
- description
- "The total number of packets dropped on transmit in the context.";
- }
-
- leaf transmit-queue-full {
- type yang:counter64;
- description
- "The number of packets dropped due to the transmit queue being
- full in the context.";
- }
-
- leaf unknown-ack {
- type yang:counter64;
- description
- "The number of packets received containing an ACK for an unknown
- message ID in the context.";
- }
-
- leaf unknown-nack {
- type yang:counter64;
- description
- "The number of packets received containing a NACK for an unknown
- message ID in the context.";
- }
- }
-
-
-
- // data definition statements
-
- // augment statements
-
- // rpc statements
-
- // notification statements
-
-}