This module contains a collection of YANG definitions for Cisco IOS-XR rsvp package configuration. This YANG module augments th...
Version: 2021-01-28
module Cisco-IOS-XR-um-rsvp-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-rsvp-cfg"; prefix um-rsvp-cfg; import cisco-semver { prefix semver; } import Cisco-IOS-XR-types { prefix xr; } import ietf-inet-types { prefix inet; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 West Tasman Drive San Jose, CA 95134 Tel: +1 800 553-NETS E-mail: cs-yang@cisco.com"; description "This module contains a collection of YANG definitions for Cisco IOS-XR rsvp package configuration. This YANG module augments the modules with configuration data. Copyright (c) 2019-2021 by Cisco Systems, Inc. All rights reserved."; revision "2021-01-28" { description "Added cisco-support task yang nodes 2020-12-10 Removed cisco-support task yang nodes"; } revision "2019-06-10" { description "- Added 'default' container under bandwidth which corredsponds to empty CLI keyword 'bandwidth' - Added necessary 'must' statement within bandwidth block - Established semantic version baseline."; } revision "2019-03-30" { description "Initial version"; } semver:module-version "2.0.0"; semver:module-version "1.0.0"; container rsvp { description "Global RSVP configuration commands"; container interfaces { description "Enable RSVP on an interface"; list interface { key "interface-name"; description "Enable RSVP on an interface"; leaf interface-name { type xr:Interface-name; description "Enable RSVP on an interface"; } container bandwidth { description "Configure RSVP bandwidth parameters"; container default { must "not(../rdm or ../percentage or ../global-pool or ../bc0 or ../total-reservable-bandwidth)"; presence "Indicates a default node is configured."; description "Configure RSVP default bandwidth"; } // container default container rdm { must "not(../default or ../percentage or ../global-pool or ../bc0 or ../total-reservable-bandwidth) and ((percentage and not(total-reservable-bandwidth or global-pool or bc0)) or (total-reservable-bandwidth and not(percentage or global-pool or bc0)) or (global-pool and not(percentage or total-reservable-bandwidth or bc0)) or (bc0 and not(percentage or total-reservable-bandwidth or global-pool)))"; presence "Indicates a rdm node is configured."; description "Configure bandwidth as Russian Doll Model"; container percentage { must "((total-reservable-bandwidth and not(global-pool or bc0)) or (global-pool and not(total-reservable-bandwidth or bc0)) or (bc0 and not(total-reservable-bandwidth or global-pool)))"; presence "Indicates a percentage node is configured."; description "Supply bandwidths as percentages of physical link bandwidth"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } container global-pool { presence "Indicates a global-pool node is configured."; description "Configure bandwidth in global pool"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } description "Largest reservable flow as percentage of physical link bandwidth"; } } // container global-pool container sub-pool { must "../total-reservable-bandwidth or ../global-pool"; presence "Indicates a sub-pool node is configured."; description "Configure bandwidth in sub-pool"; leaf reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container sub-pool container bc0 { presence "Indicates a bc0 node is configured."; description "Configure bandwidth in BC0 pool"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } description "Largest reservable flow as percentage of physical link bandwidth"; } container bc1 { presence "Indicates a bc1 node is configured."; description "Configure bandwidth in BC1 pool"; leaf reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container bc1 } // container bc0 } // container percentage leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } container global-pool { presence "Indicates a global-pool node is configured."; description "Configure bandwidth in global pool"; leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } description "Largest reservable flow as percentage of physical link bandwidth"; } } // container global-pool container sub-pool { must "../total-reservable-bandwidth or ../global-pool"; presence "Indicates a sub-pool node is configured."; description "Configure bandwidth in sub-pool"; leaf reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container sub-pool container bc0 { presence "Indicates a bc0 node is configured."; description "Configure bandwidth in BC0 pool"; leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } description "Largest reservable flow as percentage of physical link bandwidth"; } container bc1 { presence "Indicates a bc1 node is configured."; description "COnfigure bandwidth in BC1 pool"; leaf reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container bc1 } // container bc0 } // container rdm container percentage { must "not(../default or ../rdm or ../global-pool or ../bc0 or ../total-reservable-bandwidth) and ((total-reservable-bandwidth and not(global-pool or bc0)) or (global-pool and not(total-reservable-bandwidth or bc0)) or (bc0 and not(total-reservable-bandwidth or global-pool)))"; presence "Indicates a percentage node is configured."; description "Supply bandwidths as percentages of physical link bandwidth"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } container global-pool { presence "Indicates a global-pool node is configured."; description "Configure bandwidth in global pool"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } description "Largest reservable flow as percentage of physical link bandwidth"; } } // container global-pool container sub-pool { must "../total-reservable-bandwidth or ../global-pool"; presence "Indicates a sub-pool node is configured."; description "Configure bandwidth in sub-pool"; leaf reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container sub-pool container bc0 { presence "Indicates a bc0 node is configured."; description "Configure bandwidth in BC0 pool"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } description "Largest reservable flow as percentage of physical link bandwidth"; } container bc1 { presence "Indicates a bc1 node is configured."; description "Configure bandwidth in BC1 pool"; leaf reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container bc1 } // container bc0 } // container percentage container global-pool { must "not(../default or ../rdm or ../percentage or ../bc0 or ../total-reservable-bandwidth)"; presence "Indicates a global-pool node is configured."; description "Configure bandwidth in global pool"; leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } description "Largest reservable flow as percentage of physical link bandwidth"; } } // container global-pool container sub-pool { must "../total-reservable-bandwidth or ../global-pool"; presence "Indicates a sub-pool node is configured."; description "Configure bandwidth in sub-pool"; leaf reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container sub-pool container bc0 { must "not(../default or ../rdm or ../percentage or ../global-pool or ../total-reservable-bandwidth)"; presence "Indicates a bc0 node is configured."; description "Configure bandwidth in BC0 pool"; leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } description "Largest reservable flow as percentage of physical link bandwidth"; } container bc1 { presence "Indicates a bc1 node is configured."; description "Configure bandwidth in BC1 pool"; leaf reservable-bandwidth { type uint32 { range "0..4294967295"; } mandatory true; description "Reservable bandwidth in sub-pool"; } } // container bc1 } // container bc0 leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } must "not(../default or ../rdm or ../percentage or ../global-pool or ../bc0)"; description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } container mam { description "Maximum Allocation Model"; container percentage { description "Supply bandwidths as percentages of physical link bandwidth"; container max-reservable-bw { presence "Indicates a max-reservable-bw node is configured."; description "Maximum reservable bandwidth"; leaf total-reservable-bandwidth { type uint32 { range "0..10000"; } description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..10000"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } leaf bc0 { type uint32 { range "0..10000"; } description "Reservable bandwidth in bc0"; } leaf bc1 { type uint32 { range "0..10000"; } must "../bc0"; description "Reservable bandwidth in bc1"; } } // container max-reservable-bw } // container percentage container max-reservable-bw { presence "Indicates a max-reservable-bw node is configured."; description "Maximum reservable bandwidth"; leaf total-reservable-bandwidth { type uint32 { range "0..4294967295"; } description "Total reservable bandwidth as percentage of physical link bandwidth"; } leaf largest-reservable-flow { type uint32 { range "0..4294967295"; } must "../total-reservable-bandwidth"; description "Largest reservable flow as percentage of physical link bandwidth"; } leaf bc0 { type uint32 { range "0..4294967295"; } description "Reservable bandwidth in bc0"; } leaf bc1 { type uint32 { range "0..4294967295"; } must "../bc0"; description "Reservable bandwidth in bc1"; } } // container max-reservable-bw } // container mam } // container bandwidth container signalling { description "Configure RSVP signalling parameters"; leaf dscp { type uint32 { range "0..63"; } description "Set DSCP for RSVP signalling messages"; } container rate-limit { description "Configure message rate limit (pacing) options"; container enable { presence "Indicates a enable node is configured."; description "Enable message rate limit"; } // container enable leaf rate { type uint32 { range "1..500"; } must "../interval"; description "Set message rate"; } leaf interval { type uint32 { range "250..2000"; } description "Set scheduling interval"; } } // container rate-limit container refresh { description "Configure refresh options"; leaf interval { type uint32 { range "10..180"; } description "Set interval between successive refreshes"; } leaf missed { type uint32 { range "1..8"; } description "Set max number of consecutive missed messages for state expiry"; } container out-of-band { description "Configure refresh options for out-of-band tunnels"; leaf interval { type uint32 { range "180..86400"; } description "Set interval between successive refreshes"; } leaf missed { type uint32 { range "1..110000"; } description "Set max number of consecutive missed messages for state expiry"; } } // container out-of-band container reduction { description "Configure refresh reduction options"; container disable { presence "Indicates a disable node is configured."; description "Disable refresh reduction"; } // container disable container reliable { description "Configure refresh reduction reliability options"; leaf ack-hold-time { type uint32 { range "100..5000"; } description "Set hold time for sending RSVP ACK message(s)"; } leaf ack-max-size { type uint32 { range "20..65000"; } description "Set max size of a single RSVP ACK message"; } leaf retransmit-time { type uint32 { range "100..10000"; } description "Set min delay to wait for an ACK before a retransmit"; } container summary-refresh { presence "Indicates a summary-refresh node is configured."; description "Configure use of reliable messaging for summary refresh"; } // container summary-refresh } // container reliable container summary { description "Configure refresh reduction summary options"; leaf max-size { type uint32 { range "20..65000"; } description "Set max size of a single RSVP summary refresh message"; } } // container summary leaf bundle-max-size { type uint32 { range "512..65000"; } description "Set max size of a single RSVP bundle message"; } } // container reduction } // container refresh container hello { description "Configure Hello parameters"; container graceful-restart { description "Configure Graceful-Restart Hello parameters"; container interface-based { presence "Indicates a interface-based node is configured."; description "Configure Interface-based Hello"; } // container interface-based } // container graceful-restart } // container hello } // container signalling container authentication { description "Configure RSVP authentication parameters"; container key-source { description "Specify key-source for authenticating RSVP signalling messages"; leaf key-chain { type xr:Cisco-ios-xr-string { length "1..32"; } description "Use key-chain to authenticate RSVP signalling messages"; } } // container key-source leaf window-size { type uint32 { range "1..64"; } description "Use window-size to limit number of out-of-order messages"; } leaf life-time { type uint32 { range "30..86400"; } description "Use to associate life-time for each security association"; } } // container authentication } // list interface } // container interfaces container controllers { description "Enable RSVP on controller"; list controller { key "controller-name"; description "Enable RSVP on controller"; leaf controller-name { type xr:Interface-name; description "Name of controller"; } container signalling { description "Configure RSVP signalling parameters"; container refresh { description "Configure refresh options"; container out-of-band { description "Configure refresh options for out-of-band tunnels"; leaf interval { type uint32 { range "180..86400"; } description "Set interval between successive refreshes"; } leaf missed { type uint32 { range "1..110000"; } description "Set max number of consecutive missed messages for state expiry"; } } // container out-of-band } // container refresh } // container signalling } // list controller } // container controllers container signalling { description "Configure global RSVP signalling parameters"; container graceful-restart { presence "Indicates a graceful-restart node is configured."; description "Configure RSVP Graceful-Restart parameters"; } // container graceful-restart container graceful-restart-lsp-type { presence "Indicates a graceful-restart-lsp-type node is configured."; description "Configure to send LSP's ctype for Recovery and Suggested label"; } // container graceful-restart-lsp-type leaf graceful-restart-recovery-time { type uint32 { range "0..3600"; } } leaf graceful-restart-restart-time { type uint32 { range "60..3600"; } description "Configure the restart-time"; } container hello { description "Configure Hello parameters"; container graceful-restart { description "Configure Graceful-Restart Hello parameters"; container refresh { description "Configure Graceful-Restart Hello refresh parameters"; leaf interval { type uint32 { range "3000..30000"; } description "Set interval between successive Hello messages"; } leaf misses { type uint32 { range "1..10"; } description "Set max number of consecutive missed Hello messages"; } } // container refresh } // container graceful-restart } // container hello leaf event-per-pulse { type uint32 { range "0..1600"; } description "Set Max event sent per pulse"; } container prefix-filtering { description "Enable prefix-filtering for an access-list"; leaf access-list { type string { length "1..32"; } description "Specify access-list name"; } container default-deny-action { description "Action to take when ACL match returns default deny"; container drop { presence "Indicates a drop node is configured."; description "Drop the packet"; } // container drop } // container default-deny-action } // container prefix-filtering container message-bundle { description "Sending bundled messages"; container disable { presence "Indicates a disable node is configured."; description "Disable bundling of outgoing RSVP messages"; } // container disable } // container message-bundle container patherr { description "Path Error message"; container state-removal { description "State-Removal flag in Path Error message"; container disable { presence "Indicates a disable node is configured."; description "Disable State-Removal flag for Path Error"; } // container disable } // container state-removal } // container patherr container checksum { description "RSVP message checksum computation"; container disable { presence "Indicates a disable node is configured."; description "Disable RSVP message checksum computation/validation"; } // container disable } // container checksum container out-of-band { description "Configure out-of-band signalling parameters"; leaf vrf { type xr:Cisco-ios-xr-string { length "1..32"; } description "VRF used for out-of-band control signalling"; } } // container out-of-band } // container signalling container authentication { description "Configure RSVP authentication parameters"; container key-source { description "Specify key-source for authenticating RSVP signalling messages"; leaf key-chain { type xr:Cisco-ios-xr-string { length "1..32"; } description "Use key-chain to authenticate RSVP signalling messages"; } } // container key-source leaf window-size { type uint32 { range "1..64"; } description "Use window-size to limit number of out-of-order messages"; } leaf life-time { type uint32 { range "30..86400"; } description "Use to associate life-time for each security association"; } leaf retransmit { type uint32 { range "0..10000"; } description "Configure retransmit options"; } } // container authentication container neighbors { description "Configure RSVP neighbors for RSVP authentication"; list neighbor { key "neighbor-address"; description "Configure RSVP neighbors for RSVP authentication"; leaf neighbor-address { type inet:ipv4-address-no-zone; description "Configure RSVP neighbors for RSVP authentication"; } container authentication { description "Configure RSVP authentication parameters"; container key-source { description "Specify key-source for authenticating RSVP signalling messages"; leaf key-chain { type string { length "1..32"; } description "Use key-chain to authenticate RSVP signalling messages"; } } // container key-source leaf window-size { type uint32 { range "1..64"; } description "Use window-size to limit number of out-of-order messages"; } leaf life-time { type uint32 { range "30..86400"; } description "Use to associate life-time for each security association"; } } // container authentication } // list neighbor } // container neighbors container bandwidth { description "Configure RSVP default I/F bandwidth parameters"; container mam { description "Maximum Allocation Model"; container percentage { description "Supply bandwidths as percentages of physical link bandwidth"; container max-reservable { presence "Indicates a max-reservable node is configured."; description "Maximum reservable bandwidth"; leaf max-reservable-bandwidth { type uint32 { range "0..10000"; } mandatory true; description "Maximum reservable bandwidth"; } leaf bc0 { type uint32 { range "0..10000"; } description "BC0 pool"; } leaf bc1 { type uint32 { range "0..10000"; } description "BC1 pool"; } } // container max-reservable } // container percentage } // container mam container rdm { description "Russian Doll Model"; container percentage { description "Supply bandwidths as percentages of physical link bandwidth"; container max-reservable-bc0 { presence "Indicates a max-reservable-bc0 node is configured."; description "Maximum reservable/BC0"; leaf bc0 { type uint32 { range "0..10000"; } mandatory true; description "Maximum reservable/BC0"; } leaf bc1 { type uint32 { range "0..10000"; } description "BC1 pool"; } } // container max-reservable-bc0 } // container percentage } // container rdm } // container bandwidth container latency { description "Set the latency attributes"; leaf threshold { type uint32 { range "0..180"; } description "Set the latency threshold to a value in seconds (default 60)"; } } // container latency container logging { description "RSVP logging configuration"; container events { description "Global logging events"; container nsr { presence "Indicates a nsr node is configured."; description "Enable NSR Status Logging"; } // container nsr container issu { presence "Indicates a issu node is configured."; description "Enable ISSU Status Logging"; } // container issu } // container events } // container logging container ltrace-buffer { description "RSVP trace buffer files"; container multiplier { presence "Indicates a multiplier node is configured."; description "trace buffer file size multiplier"; leaf multiplier-factor { type uint32 { range "2..6"; } mandatory true; description "trace buffer file size multiplier"; } container rare { presence "Indicates a rare node is configured."; description "Rare trace buffer"; } // container rare container common { presence "Indicates a common node is configured."; description "Common trace buffer"; } // container common container sig { presence "Indicates a sig node is configured."; description "Signalling trace buffer"; } // container sig container sig-err { presence "Indicates a sig-err node is configured."; description "Signalling errors trace buffer"; } // container sig-err container intf { presence "Indicates a intf node is configured."; description "Interface trace buffer"; } // container intf container dbg-err { presence "Indicates a dbg-err node is configured."; description "Debug errors trace buffer"; } // container dbg-err container sync { presence "Indicates a sync node is configured."; description "Sync trace buffer"; } // container sync } // container multiplier } // container ltrace-buffer } // container rsvp } // module Cisco-IOS-XR-um-rsvp-cfg
© 2023 YumaWorks, Inc. All rights reserved.