This module contains a collection of YANG definitions for Cisco IOS-XR ipv4-pim package configuration. This module contains def...
Version: 2020-01-30
module Cisco-IOS-XR-ipv4-pim-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-pim-cfg"; prefix ipv4-pim-cfg; import ietf-inet-types { prefix inet; } import Cisco-IOS-XR-types { prefix xr; } import cisco-semver { prefix semver; } import Cisco-IOS-XR-ipv4-autorp-datatypes { prefix dt1; } 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 ipv4-pim package configuration. This module contains definitions for the following management objects: pim: PIM configuration Copyright (c) 2013-2020 by Cisco Systems, Inc. All rights reserved."; revision "2020-01-30" { description "Addition made for Sticky DR CLI/XML operations"; } revision "2019-10-31" { description "Added mandatory nodes and presence containers."; } revision "2019-04-05" { description "Establish semantic version baseline."; } revision "2017-10-15" { description "Removed presence statement generated from internal CLI data."; } revision "2017-05-22" { description "Updated node naming to be consistent with the CLI"; } revision "2015-11-09" { description "IOS XR 6.0 revision."; } semver:module-version "2.1.0"; semver:module-version "2.0.0"; semver:module-version "1.0.0"; typedef Pim-bsr-priority { type uint32 { range "1..255"; } description "Pim bsr priority"; } typedef Auto-rp-announce-period { type uint32 { range "1..600"; } description "Auto rp announce period"; } typedef Pim-multipath { type enumeration { enum "enable" { value 0; description "Enable PIM multipath"; } enum "interface-hash" { value 1; description "Enable PIM multipath with interface based hashing"; } enum "source-hash" { value 2; description "Enable PIM multipath with source based hashing"; } enum "source-next-hop-hash" { value 3; description "Enable PIM multipath with source next-hop hashing"; } enum "source-group-hash" { value 4; description "Enable PIM multipath with source, group based hashing"; } } description "Pim multipath"; } typedef Auto-rp-ttl { type uint32 { range "1..255"; } description "Auto rp ttl"; } typedef Pim-protocol-mode { type enumeration { enum "sm" { value 0; description "Sparse Mode"; } enum "bidir" { value 1; description "Bidirectional"; } } description "Pim protocol mode"; } grouping SUPPRESS-DATA-REGISTERS { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf suppress-data-registers { type empty; description "Suppress data registers after initial state setup"; } } // grouping SUPPRESS-DATA-REGISTERS grouping ROUTE-POLICY { description "Common node of rpf, rpf-redirect"; leaf route-policy { type xr:Cisco-ios-xr-string { length "1..64"; } description "Route policy to select RPF topology"; } } // grouping ROUTE-POLICY grouping INTERFACE-ENABLE { description "Common node of interface, interface, interface"; leaf interface-enable { type boolean; description "Enable PIM processing on the interface"; } } // grouping INTERFACE-ENABLE grouping BSR-BORDER { description "Common node of interface, interface, interface"; leaf bsr-border { type boolean; description "BSR Border configuration for Interface"; } } // grouping BSR-BORDER grouping JOIN-PRUNE-MTU { description "Common node of inheritable-defaults, interface, interface, interface"; leaf join-prune-mtu { type uint32 { range "576..65535"; } units "byte"; description "Join-Prune MTU in Bytes"; } } // grouping JOIN-PRUNE-MTU grouping NEIGHBOR-CHECK-ON-RECEIVE { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf neighbor-check-on-receive { type empty; description "Enable PIM neighbor checking when receiving PIM messages"; } } // grouping NEIGHBOR-CHECK-ON-RECEIVE grouping RPF { description "Common node of ipv4, ipv4, ipv6, ipv6"; container rpf { description "Configure RPF options"; uses ROUTE-POLICY; } // container rpf } // grouping RPF grouping MOFRR { description "Common node of ipv4, ipv4"; container mofrr { description "Multicast Only Fast Re-Route"; container clone-joins { description "Clone multicast joins"; list clone-join { key "source primary backup prefix-length"; description "Clone S,G joins as S1,G joins and S2,G joins"; leaf source { type inet:ipv4-address-no-zone; description "Original source address (S)"; } leaf primary { type inet:ipv4-address-no-zone; description "Primary cloned address (S1)"; } leaf backup { type inet:ipv4-address-no-zone; description "Backup cloned address (S2)"; } leaf prefix-length { type xr:Ipv4-prefix-length; description "Mask length"; } } // list clone-join } // container clone-joins container clone-sources { description "Clone multicast traffic"; list clone-source { key "source primary backup prefix-length"; description "Clone S,G traffic as S1,G traffic and S2,G traffic"; leaf source { type inet:ipv4-address-no-zone; description "Original source address (S)"; } leaf primary { type inet:ipv4-address-no-zone; description "Primary cloned address (S1)"; } leaf backup { type inet:ipv4-address-no-zone; description "Backup cloned address (S2)"; } leaf prefix-length { type xr:Ipv4-prefix-length; description "Mask length"; } } // list clone-source } // container clone-sources leaf rib { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list specifying SG that should do RIB MOFRR"; } leaf non-revertive { type empty; description "Non-revertive Multicast Only Fast Re-Route"; } leaf enable { type empty; description "Enable Multicast Only FRR"; } leaf flow { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list specifying SG that should do FLOW MOFRR"; } } // container mofrr } // grouping MOFRR grouping EMBEDDED-RP { description "Common node of ipv6, ipv6"; container embedded-rp-addresses { description "Set Embedded RP processing support"; list embedded-rp-address { key "rp-address"; description "Set Embedded RP processing support"; leaf rp-address { type inet:ip-address-no-zone; description "RP address of the Rendezvous Point"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } mandatory true; description "Access list of groups that should map to a given RP"; } } // list embedded-rp-address } // container embedded-rp-addresses } // grouping EMBEDDED-RP grouping NEIGHBOR-CHECK-ON-SEND { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf neighbor-check-on-send { type empty; description "Enable PIM neighbor checking when sending join-prunes"; } } // grouping NEIGHBOR-CHECK-ON-SEND grouping EMBEDDED-RP-DISABLE { description "Common node of ipv6, ipv6"; leaf embedded-rp-disable { type empty; description "Set Embedded RP processing support"; } } // grouping EMBEDDED-RP-DISABLE grouping BSR { description "Common node of ipv4, ipv4"; container bsr { description "PIM BSR configuration"; container candidate-bsr { presence "Indicates a candidate-bsr node is configured."; description "PIM Candidate BSR configuration"; leaf address { type inet:ip-address-no-zone; mandatory true; description "BSR Address configured"; } leaf prefix-length { type xr:Ipv4-prefix-length; mandatory true; description "Hash Mask Length for this candidate BSR"; } leaf priority { type Pim-bsr-priority; mandatory true; description "Priority of the Candidate BSR"; } } // container candidate-bsr uses CANDIDATE-RP-TABLE; } // container bsr } // grouping BSR grouping IPV6-PIM-CFG-BSR { description "Common node of ipv4, ipv4Common node of ipv6, ipv6"; container bsr { description "PIM BSR configuration"; container candidate-bsr { presence "Indicates a candidate-bsr node is configured."; description "PIM Candidate BSR configuration"; leaf address { type inet:ipv6-address-no-zone; mandatory true; description "BSR Address configured"; } leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "Hash Mask Length for this candidate BSR"; } leaf priority { type Pim-bsr-priority; mandatory true; description "Priority of the Candidate BSR"; } } // container candidate-bsr uses CANDIDATE-RP-TABLE; } // container bsr } // grouping IPV6-PIM-CFG-BSR grouping SPARSE-MODE-RP-ADDRESS-TABLE { description "Common node of ipv4, ipv4, ipv6, ipv6"; container sparse-mode-rp-addresses { description "Configure Sparse-Mode Rendezvous Point"; list sparse-mode-rp-address { key "rp-address"; description "Address of the Rendezvous Point"; leaf rp-address { type inet:ip-address-no-zone; description "RP address of Rendezvous Point"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list of groups that should map to a given RP"; } leaf auto-rp-override { type boolean; description "TRUE Indicates if static RP config overrides AutoRP and BSR"; } } // list sparse-mode-rp-address } // container sparse-mode-rp-addresses } // grouping SPARSE-MODE-RP-ADDRESS-TABLE grouping INHERITABLE-DEFAULTS { description "Common node of ipv4, ipv4, ipv6, ipv6"; container inheritable-defaults { description "Inheritable defaults"; leaf convergence-timeout { type uint32 { range "1800..2400"; } units "second"; description "Convergency timeout in seconds"; } uses HELLO-INTERVAL; uses STICKY-DR; uses PROPAGATION-DELAY; uses DR-PRIORITY; uses JOIN-PRUNE-MTU; uses JP-INTERVAL; uses OVERRIDE-INTERVAL; } // container inheritable-defaults } // grouping INHERITABLE-DEFAULTS grouping AUTO-RP-DISABLE { description "Common node of ipv4, ipv4"; leaf auto-rp-disable { type empty; description "Disable Rendezvous Point discovery through the AutoRP protocol"; } } // grouping AUTO-RP-DISABLE grouping ROUTES { description "Common node of maximum, maximum"; container routes { presence "Indicates a routes node is configured."; description "Override default maximum for number of routes"; leaf maximum-routes { type uint32 { range "1..200000"; } mandatory true; description "Maximum number of PIM routes"; } leaf warning-threshold { type uint32 { range "1..200000"; } default "100000"; description "Set threshold to print warning"; } } // container routes } // grouping ROUTES grouping RP-STATIC-DENY { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf rp-static-deny { type xr:Cisco-ios-xr-string { length "1..64"; } description "Configure static RP deny range"; } } // grouping RP-STATIC-DENY grouping SSM { description "Common node of ipv4, ipv4, ipv6, ipv6"; container ssm { presence "Contains mandatory nodes that used to set default values"; description "Configure IP Multicast SSM"; leaf disable { type boolean; mandatory true; description "TRUE if SSM is disabled on this router"; } leaf range { type string { length "1..64"; } description "Access list of groups enabled with SSM"; } } // container ssm } // grouping SSM grouping OVERRIDE-INTERVAL { description "Common node of inheritable-defaults, interface, interface, interface"; leaf override-interval { type uint32 { range "400..65535"; } units "millisecond"; description "Override interval in milliseconds"; } } // grouping OVERRIDE-INTERVAL grouping CONVERGENCE { description "Common node of ipv4, ipv4, ipv6, ipv6"; container convergence { description "Configure convergence parameters"; leaf rpf-conflict-join-delay { type uint32 { range "0..15"; } units "second"; description "Dampen first join if RPF path is through one of the downstream neighbor"; } leaf link-down-prune-delay { type uint32 { range "0..60"; } units "second"; description "Delay prunes if route join state transitions to not-joined on link down"; } } // container convergence } // grouping CONVERGENCE grouping REGISTER-SOURCE { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf register-source { type xr:Interface-name; description "Source address to use for register messages"; } } // grouping REGISTER-SOURCE grouping CANDIDATE-RP-TABLE { description "Common node of bsr, bsr"; container candidate-rps { description "PIM RP configuration"; list candidate-rp { key "address mode"; description "Address of PIM SM BSR Candidate-RP"; leaf address { type inet:ip-address-no-zone; description "Address of Candidate-RP"; } leaf mode { type Pim-protocol-mode; description "SM or Bidir"; } leaf group-list { type string { length "1..64"; } description "Access-list specifying the group range for the Candidate-RP"; } leaf priority { type Pim-bsr-priority; mandatory true; description "Priority of the CRP"; } leaf interval { type uint32 { range "30..600"; } mandatory true; description "Advertisement interval"; } } // list candidate-rp } // container candidate-rps } // grouping CANDIDATE-RP-TABLE grouping PROPAGATION-DELAY { description "Common node of inheritable-defaults, interface, interface, interface"; leaf propagation-delay { type uint32 { range "100..32767"; } units "millisecond"; description "Propagation delay in milli seconds"; } } // grouping PROPAGATION-DELAY grouping GROUP-MAPPINGS-AUTO-RP { description "Common node of maximum, maximum"; container group-mappings-auto-rp { presence "Indicates a group-mappings-auto-rp node is configured."; description "Override default maximum for number of group mappings from autorp mapping agent"; leaf maximum-group-ranges-auto-rp { type uint32 { range "1..10000"; } mandatory true; description "Maximum number of PIM group mappings from autorp"; } leaf threshold-group-ranges-auto-rp { type uint32 { range "1..10000"; } default "450"; description "Warning threshold number of PIM group mappings from autorp"; } } // container group-mappings-auto-rp } // grouping GROUP-MAPPINGS-AUTO-RP grouping SPT-THRESHOLD-INFINITY { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf spt-threshold-infinity { type string; description "Configure threshold of infinity for switching to SPT on last-hop"; } } // grouping SPT-THRESHOLD-INFINITY grouping NEIGHBOR-FILTER { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf neighbor-filter { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list of neighbors to be filtered"; } } // grouping NEIGHBOR-FILTER grouping IPV4-PIM-COMMON-CFG-NEIGHBOR-FILTER { description "Common node of ipv4, ipv4, ipv6, ipv6Common node of interface, interface, interface"; leaf neighbor-filter { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list of neighbors to be filtered"; } } // grouping IPV4-PIM-COMMON-CFG-NEIGHBOR-FILTER grouping ROUTE-INTERFACES { description "Common node of maximum, maximum"; container route-interfaces { presence "Indicates a route-interfaces node is configured."; description "Override default maximum for number of route-interfaces"; leaf maximum-route-interfaces { type uint32 { range "1..1100000"; } mandatory true; description "Maximum number of PIM route-interfaces"; } leaf warning-threshold { type uint32 { range "1..1100000"; } default "300000"; description "Set threshold to print warning"; } } // container route-interfaces } // grouping ROUTE-INTERFACES grouping SSM-ALLOW-OVERRIDE { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf ssm-allow-override { type empty; description "Allow SSM ranges to be overridden by more specific ranges"; } } // grouping SSM-ALLOW-OVERRIDE grouping LOG-NEIGHBOR-CHANGES { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf log-neighbor-changes { type empty; description "PIM neighbor state change logging is turned on if configured"; } } // grouping LOG-NEIGHBOR-CHANGES grouping STICKY-DR { description "Common node of inheritable-defaults, interface, interface, interface"; leaf sticky-dr { type boolean; description "Enables interface sticky-dr feature"; } } // grouping STICKY-DR grouping MAXIMUM { description "Common node of ipv4, ipv6"; container maximum { description "Configure PIM State Limits"; uses GROUP-MAPPINGS-AUTO-RP; uses BSR-GROUP-MAPPINGS; uses REGISTER-STATES; uses ROUTE-INTERFACES; uses BSR-CANDIDATE-RP-CACHE; uses ROUTES; } // container maximum } // grouping MAXIMUM grouping IPV4-PIM-COMMON-CFG-MAXIMUM { description "Common node of ipv4, ipv6Common node of ipv4, ipv6"; container maximum { description "Configure PIM State Limits"; container bsr-global-group-mappings { presence "Indicates a bsr-global-group-mappings node is configured."; description "Override default global maximum and threshold for PIM group mapping ranges from BSR"; leaf bsr-maximum-global-group-mappings { type uint32 { range "1..10000"; } mandatory true; description "Global Maximum number of PIM group mapping ranges from BSR"; } leaf warning-threshold { type uint32 { range "1..10000"; } default "500"; description "Set threshold to print warning"; } } // container bsr-global-group-mappings container global-routes { presence "Indicates a global-routes node is configured."; description "Override default maximum for number of routes"; leaf maximum-routes { type uint32 { range "1..200000"; } mandatory true; description "Maximum number of PIM routes"; } leaf warning-threshold { type uint32 { range "1..200000"; } default "100000"; description "Set threshold to print warning"; } } // container global-routes container global-group-mappings-auto-rp { presence "Indicates a global-group-mappings-auto-rp node is configured."; description "Maximum for number of group mappings from autorp mapping agent"; leaf maximum-global-group-ranges-auto-rp { type uint32 { range "1..10000"; } mandatory true; description "Maximum number of PIM group mappings from autorp"; } leaf threshold-global-group-ranges-auto-rp { type uint32 { range "1..10000"; } default "450"; description "Warning threshold number of PIM group mappings from autorp"; } } // container global-group-mappings-auto-rp container bsr-global-candidate-rp-cache { presence "Indicates a bsr-global-candidate-rp-cache node is configured."; description "Override default global maximum and threshold for C-RP set in BSR"; leaf bsr-maximum-global-candidate-rp-cache { type uint32 { range "1..10000"; } mandatory true; description "Global Maximum number of PIM C-RP Sets from BSR"; } leaf warning-threshold { type uint32 { range "1..10000"; } default "100"; description "Set threshold to print warning"; } } // container bsr-global-candidate-rp-cache container global-register-states { presence "Indicates a global-register-states node is configured."; description "Override default maximum for number of sparse-mode source registers"; leaf maximum-register-states { type uint32 { range "0..75000"; } mandatory true; description "Maximum number of PIM Sparse-Mode register states"; } leaf warning-threshold { type uint32 { range "0..75000"; } default "20000"; description "Set threshold to print warning"; } } // container global-register-states container global-route-interfaces { presence "Indicates a global-route-interfaces node is configured."; description "Override default maximum for number of route-interfaces"; leaf maximum-route-interfaces { type uint32 { range "1..1100000"; } mandatory true; description "Maximum number of PIM route-interfaces"; } leaf warning-threshold { type uint32 { range "1..1100000"; } default "300000"; description "Set threshold to print warning"; } } // container global-route-interfaces leaf global-low-priority-packet-queue { type uint32 { range "0..2147483648"; } units "byte"; description "Maximum packet queue size in bytes"; } leaf global-high-priority-packet-queue { type uint32 { range "0..2147483648"; } units "byte"; description "Maximum packet queue size in bytes"; } uses GROUP-MAPPINGS-AUTO-RP; uses BSR-GROUP-MAPPINGS; uses REGISTER-STATES; uses ROUTE-INTERFACES; uses BSR-CANDIDATE-RP-CACHE; uses ROUTES; } // container maximum } // grouping IPV4-PIM-COMMON-CFG-MAXIMUM grouping SG-EXPIRY-TIMER { description "Common node of ipv4, ipv4, ipv6, ipv6"; container sg-expiry-timer { description "Configure expiry timer for S,G routes"; leaf interval { type uint32 { range "40..57600"; } units "second"; description "(S,G) expiry time in seconds"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list of applicable S,G routes"; } } // container sg-expiry-timer } // grouping SG-EXPIRY-TIMER grouping INTERFACE-TABLE { description "Common node of ipv4, ipv6"; container interfaces { description "Interface-level Configuration"; list interface { key "interface-name"; description "The name of the interface"; leaf enable { type empty; description "Enter PIM Interface processing"; } leaf interface-name { type xr:Interface-name; description "The name of interface"; } uses IPV4-PIM-COMMON-CFG-NEIGHBOR-FILTER; uses HELLO-INTERVAL; uses STICKY-DR; uses BSR-BORDER; uses MAXIMUM-ROUTES; uses PROPAGATION-DELAY; uses BFD; uses DR-PRIORITY; uses JOIN-PRUNE-MTU; uses INTERFACE-ENABLE; uses JP-INTERVAL; uses OVERRIDE-INTERVAL; } // list interface } // container interfaces } // grouping INTERFACE-TABLE grouping REGISTER-STATES { description "Common node of maximum, maximum"; container register-states { presence "Indicates a register-states node is configured."; description "Override default maximum for number of sparse-mode source registers"; leaf maximum-register-states { type uint32 { range "0..75000"; } mandatory true; description "Maximum number of PIM Sparse-Mode register states"; } leaf warning-threshold { type uint32 { range "0..75000"; } default "20000"; description "Set threshold to print warning"; } } // container register-states } // grouping REGISTER-STATES grouping MULTIPATH { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf multipath { type Pim-multipath; description "Enable equal-cost multipath routing"; } } // grouping MULTIPATH grouping HELLO-INTERVAL { description "Common node of inheritable-defaults, interface, interface, interface"; leaf hello-interval { type uint32 { range "1..3600"; } units "second"; description "Hello interval in seconds"; } } // grouping HELLO-INTERVAL grouping BIDIR-RP-ADDRESS-TABLE { description "Common node of ipv4, ipv4, ipv6, ipv6"; container bidir-rp-addresses { description "Configure Bidirectional PIM Rendezvous Point"; list bidir-rp-address { key "rp-address"; description "Address of the Rendezvous Point"; leaf rp-address { type inet:ip-address-no-zone; description "RP address of Rendezvous Point"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list of groups that should map to a given RP"; } leaf auto-rp-override { type boolean; description "TRUE Indicates if static RP config overrides AutoRP and BSR"; } } // list bidir-rp-address } // container bidir-rp-addresses } // grouping BIDIR-RP-ADDRESS-TABLE grouping BSR-CANDIDATE-RP-CACHE { description "Common node of maximum, maximum"; container bsr-candidate-rp-cache { presence "Indicates a bsr-candidate-rp-cache node is configured."; description "Override default maximum and threshold for BSR C-RP cache setting"; leaf bsr-maximum-candidate-rp-cache { type uint32 { range "1..10000"; } mandatory true; description "Maximum number of BSR C-RP cache setting"; } leaf warning-threshold { type uint32 { range "1..10000"; } default "100"; description "Set threshold to print warning"; } } // container bsr-candidate-rp-cache } // grouping BSR-CANDIDATE-RP-CACHE grouping JP-INTERVAL { description "Common node of inheritable-defaults, interface, interface, interface"; leaf jp-interval { type uint32 { range "10..600"; } units "second"; description "Join-Prune interval in seconds"; } } // grouping JP-INTERVAL grouping NSF { description "Common node of ipv4, ipv6"; container nsf { description "Configure Non-stop forwarding (NSF) options"; leaf lifetime { type uint32 { range "10..600"; } units "second"; description "Override default maximum lifetime for PIM NSF mode"; } } // container nsf } // grouping NSF grouping DR-PRIORITY { description "Common node of inheritable-defaults, interface, interface, interface"; leaf dr-priority { type uint32 { range "0..4294967295"; } description "Hello DR priority, preference given to larger value"; } } // grouping DR-PRIORITY grouping BFD { description "Common node of interface, interface, interface"; container bfd { description "BFD configuration"; leaf detection-multiplier { type uint32 { range "2..50"; } description "Detection multiplier for BFD sessions created by PIM"; } leaf interval { type uint32 { range "3..30000"; } units "millisecond"; description "Hello interval for BFD sessions created by PIM"; } leaf enable { type boolean; description "TRUE to enable BFD. FALSE to disable and to prevent inheritance from a parent"; } } // container bfd } // grouping BFD grouping RPF-VECTOR-INJECT { description "Common node of ipv4, ipv4"; container paths { description "Inject PIM RPF Vector Proxy's"; list path { key "source-address prefix-length"; description "Inject PIM RPF Vector Proxy's"; leaf source-address { type inet:ipv4-address-no-zone; description "Source Address"; } leaf prefix-length { type xr:Ipv4-prefix-length; description "Masklen"; } leaf-list rpf-proxy-address { type inet:ipv4-address-no-zone; min-elements 1; max-elements 22; description "RPF Proxy Address"; } } // list path } // container paths } // grouping RPF-VECTOR-INJECT grouping BSR-GROUP-MAPPINGS { description "Common node of maximum, maximum"; container bsr-group-mappings { presence "Indicates a bsr-group-mappings node is configured."; description "Override default maximum and threshold for number of group mappings from BSR"; leaf bsr-maximum-group-ranges { type uint32 { range "1..10000"; } mandatory true; description "Maximum number of PIM group mappings from BSR"; } leaf warning-threshold { type uint32 { range "1..10000"; } default "500"; description "Set threshold to print warning"; } } // container bsr-group-mappings } // grouping BSR-GROUP-MAPPINGS grouping ACCEPT-REGISTER { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf accept-register { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list which specifies unauthorized sources"; } } // grouping ACCEPT-REGISTER grouping OLD-REGISTER-CHECKSUM { description "Common node of ipv4, ipv4, ipv6, ipv6"; leaf old-register-checksum { type empty; description "Generate registers compatible with older IOS versions"; } } // grouping OLD-REGISTER-CHECKSUM grouping ALLOW-RP { description "Common node of ipv4, ipv4, ipv6, ipv6"; container allow-rp { presence "enable allow-rp"; description "Enable allow-rp filtering for SM joins"; leaf rp-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list specifiying applicable RPs"; } leaf group-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list specifiying applicable groups"; } } // container allow-rp } // grouping ALLOW-RP grouping MAXIMUM-ROUTES { description "Common node of interface, interface, interface"; container maximum-routes { presence "Indicates a maximum-routes node is configured."; description "Maximum number of allowed routes for this interface"; leaf maximum { type uint32 { range "1..1100000"; } mandatory true; description "Maximum number of routes for this interface"; } leaf warning-threshold { type uint32 { range "1..1100000"; } description "Set threshold to print warning"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list to account for"; } } // container maximum-routes } // grouping MAXIMUM-ROUTES grouping SUPPRESS-RPF-PRUNES { description "Common node of interface, interface, interfaceCommon node of ipv4, ipv4, ipv6, ipv6"; leaf suppress-rpf-prunes { type empty; description "Suppress prunes triggered as a result of RPF changes"; } } // grouping SUPPRESS-RPF-PRUNES grouping RPF-VECTOR-ENABLE { description "Common node of ipv4, ipv4, ipv6, ipv6"; container rpf-vector-enable { presence "Indicates a rpf-vector-enable node is configured."; description "Enable PIM RPF Vector Proxy's"; leaf enable { type empty; mandatory true; description "RPF Vector is turned on if configured"; } leaf allow-ebgp { type empty; description "Allow RPF Vector origination over eBGP sessions"; } leaf disable-ibgp { type empty; description "Disable RPF Vector origination over iBGP sessions"; } leaf use-standard-encoding { type empty; description "Use RPF Vector RFC compliant encoding"; } } // container rpf-vector-enable } // grouping RPF-VECTOR-ENABLE grouping EXPLICIT-RPF-VECTOR { description "Common node of ipv4, ipv4"; container injects { description "Inject Explicit PIM RPF Vector Proxy's"; list inject { key "source-address prefix-length"; description "Inject Explicit PIM RPF Vector Proxy's"; leaf source-address { type inet:ipv4-address-no-zone; description "Source Address"; } leaf prefix-length { type xr:Ipv4-prefix-length; description "Masklen"; } leaf-list rpf-proxy-address { type inet:ipv4-address-no-zone; min-elements 1; max-elements 22; description "RPF Proxy Address"; } } // list inject } // container injects } // grouping EXPLICIT-RPF-VECTOR container pim { description "PIM configuration"; container vrfs { description "VRF table"; list vrf { key "vrf-name"; description "VRF name"; container ipv4 { description "IPV4 commands"; uses NEIGHBOR-CHECK-ON-RECEIVE; uses OLD-REGISTER-CHECKSUM; uses SPARSE-MODE-RP-ADDRESS-TABLE; uses NEIGHBOR-FILTER; uses INHERITABLE-DEFAULTS; uses SPT-THRESHOLD-INFINITY; uses LOG-NEIGHBOR-CHANGES; uses RPF; uses REGISTER-SOURCE; uses MAXIMUM; uses ACCEPT-REGISTER; uses SG-EXPIRY-TIMER; uses RPF-VECTOR-ENABLE; uses SUPPRESS-RPF-PRUNES; uses SSM; uses EXPLICIT-RPF-VECTOR; uses BIDIR-RP-ADDRESS-TABLE; uses SSM-ALLOW-OVERRIDE; uses BSR; uses MOFRR; uses MULTIPATH; uses RP-STATIC-DENY; uses RPF-VECTOR-INJECT; uses ALLOW-RP; uses SUPPRESS-DATA-REGISTERS; uses NEIGHBOR-CHECK-ON-SEND; uses CONVERGENCE; uses INTERFACE-TABLE; uses AUTO-RP-DISABLE; } // container ipv4 container ipv6 { description "IPV6 commands"; uses NEIGHBOR-CHECK-ON-RECEIVE; uses OLD-REGISTER-CHECKSUM; uses SPARSE-MODE-RP-ADDRESS-TABLE; uses NEIGHBOR-FILTER; uses INHERITABLE-DEFAULTS; uses SPT-THRESHOLD-INFINITY; uses LOG-NEIGHBOR-CHANGES; uses RPF; uses REGISTER-SOURCE; uses MAXIMUM; uses ACCEPT-REGISTER; uses SG-EXPIRY-TIMER; uses RPF-VECTOR-ENABLE; uses EMBEDDED-RP-DISABLE; uses SUPPRESS-RPF-PRUNES; uses SSM; uses BIDIR-RP-ADDRESS-TABLE; uses SSM-ALLOW-OVERRIDE; uses MULTIPATH; uses IPV6-PIM-CFG-BSR; uses RP-STATIC-DENY; uses ALLOW-RP; uses SUPPRESS-DATA-REGISTERS; uses NEIGHBOR-CHECK-ON-SEND; uses EMBEDDED-RP; uses CONVERGENCE; uses INTERFACE-TABLE; } // container ipv6 leaf vrf-name { type xr:Cisco-ios-xr-string { length "1..32"; } description "VRF name"; } } // list vrf } // container vrfs container default-context { description "Default Context"; container ipv6 { description "IPV6 commands"; container interfaces { description "Interface-level Configuration"; list interface { key "interface-name"; description "The name of the interface"; leaf enable { type empty; description "Enter PIM Interface processing"; } leaf interface-name { type xr:Interface-name; description "The name of interface"; } uses IPV4-PIM-COMMON-CFG-NEIGHBOR-FILTER; uses HELLO-INTERVAL; uses STICKY-DR; uses BSR-BORDER; uses MAXIMUM-ROUTES; uses PROPAGATION-DELAY; uses BFD; uses DR-PRIORITY; uses JOIN-PRUNE-MTU; uses INTERFACE-ENABLE; uses JP-INTERVAL; uses OVERRIDE-INTERVAL; } // list interface } // container interfaces uses NEIGHBOR-CHECK-ON-RECEIVE; uses OLD-REGISTER-CHECKSUM; uses SPARSE-MODE-RP-ADDRESS-TABLE; uses NEIGHBOR-FILTER; uses INHERITABLE-DEFAULTS; uses SPT-THRESHOLD-INFINITY; uses LOG-NEIGHBOR-CHANGES; uses RPF; uses REGISTER-SOURCE; uses ACCEPT-REGISTER; uses SG-EXPIRY-TIMER; uses RPF-VECTOR-ENABLE; uses NSF; uses EMBEDDED-RP-DISABLE; uses SUPPRESS-RPF-PRUNES; uses IPV4-PIM-COMMON-CFG-MAXIMUM; uses SSM; uses BIDIR-RP-ADDRESS-TABLE; uses SSM-ALLOW-OVERRIDE; uses MULTIPATH; uses IPV6-PIM-CFG-BSR; uses RP-STATIC-DENY; uses ALLOW-RP; uses SUPPRESS-DATA-REGISTERS; uses NEIGHBOR-CHECK-ON-SEND; uses EMBEDDED-RP; uses CONVERGENCE; } // container ipv6 container ipv4 { description "IPV4 commands"; container rpf-redirect { description "Configure RPF-redirect feature"; uses ROUTE-POLICY; } // container rpf-redirect container interfaces { description "Interface-level Configuration"; list interface { key "interface-name"; description "The name of the interface"; container redirect-bundle { description "Configure RPF-redirect bundle for interface. Applicable for IPv4 only"; leaf bundle-name { type xr:Cisco-ios-xr-string { length "1..32"; } description "Bundle name"; } leaf interface-bandwidth { type uint32 { range "0..100000000"; } units "kbit/s"; must "../bundle-name and ../threshold-bandwidth"; description "Interface bandwidth in Kbps"; } leaf threshold-bandwidth { type uint32 { range "0..100000000"; } units "kbit/s"; must "../bundle-name and ../interface-bandwidth"; description "Threshold bandwidth in Kbps"; } } // container redirect-bundle leaf enable { type empty; description "Enter PIM Interface processing"; } leaf interface-name { type xr:Interface-name; description "The name of interface"; } uses IPV4-PIM-COMMON-CFG-NEIGHBOR-FILTER; uses HELLO-INTERVAL; uses STICKY-DR; uses BSR-BORDER; uses MAXIMUM-ROUTES; uses PROPAGATION-DELAY; uses BFD; uses DR-PRIORITY; uses JOIN-PRUNE-MTU; uses INTERFACE-ENABLE; uses JP-INTERVAL; uses OVERRIDE-INTERVAL; } // list interface } // container interfaces container auto-rp-candidate-rps { description "Configure Candidate-RPs"; list auto-rp-candidate-rp { key "interface-name protocol-mode"; description "Specifications for a Candidate-RP"; leaf interface-name { type xr:Interface-name; description "Interface from which Candidate-RP packets will be sourced"; } leaf protocol-mode { type dt1:Auto-rp-protocol-mode; description "Protocol Mode"; } leaf ttl { type Auto-rp-ttl; mandatory true; description "TTL in Hops"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } mandatory true; description "Access-list specifying the group range for the Candidate-RP"; } leaf announce-period { type Auto-rp-announce-period; units "second"; mandatory true; description "Time between announcements <in seconds> "; } } // list auto-rp-candidate-rp } // container auto-rp-candidate-rps container auto-rp-mapping-agent { description "Configure AutoRP Mapping Agent"; container parameters { presence "Indicates a parameters node is configured."; description "Specifications for Mapping Agent configured on this box"; leaf interface-name { type xr:Interface-name; mandatory true; description "Interface from which mapping packets will be sourced "; } leaf ttl { type Auto-rp-ttl; mandatory true; description "TTL in Hops"; } leaf announce-period { type Auto-rp-announce-period; units "second"; mandatory true; description "Time between discovery messages <in seconds>"; } } // container parameters container cache-limit { presence "Indicates a cache-limit node is configured."; description "Mapping Agent cache size limit"; leaf maximum-cache-entry { type uint32 { range "1..1000"; } mandatory true; description "Maximum number of mapping cache entries"; } leaf threshold-cache-entry { type uint32 { range "1..1000"; } default "450"; description "Warning threshold number of cache entries"; } } // container cache-limit } // container auto-rp-mapping-agent uses NEIGHBOR-CHECK-ON-RECEIVE; uses OLD-REGISTER-CHECKSUM; uses SPARSE-MODE-RP-ADDRESS-TABLE; uses NEIGHBOR-FILTER; uses INHERITABLE-DEFAULTS; uses SPT-THRESHOLD-INFINITY; uses LOG-NEIGHBOR-CHANGES; uses RPF; uses REGISTER-SOURCE; uses ACCEPT-REGISTER; uses SG-EXPIRY-TIMER; uses RPF-VECTOR-ENABLE; uses NSF; uses SUPPRESS-RPF-PRUNES; uses IPV4-PIM-COMMON-CFG-MAXIMUM; uses SSM; uses EXPLICIT-RPF-VECTOR; uses BIDIR-RP-ADDRESS-TABLE; uses SSM-ALLOW-OVERRIDE; uses BSR; uses MOFRR; uses MULTIPATH; uses RP-STATIC-DENY; uses RPF-VECTOR-INJECT; uses ALLOW-RP; uses SUPPRESS-DATA-REGISTERS; uses NEIGHBOR-CHECK-ON-SEND; uses CONVERGENCE; uses AUTO-RP-DISABLE; } // container ipv4 } // container default-context } // container pim } // module Cisco-IOS-XR-ipv4-pim-cfg
© 2024 YumaWorks, Inc. All rights reserved.