This module contains a collection of YANG definitions for Cisco IOS-XR hw-module-profile package configuration. This YANG modul...
Version: 2021-04-29
module Cisco-IOS-XR-um-hw-module-profile-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-profile-cfg"; prefix um-hw-module-profile-cfg; import Cisco-IOS-XR-types { prefix xr; } import cisco-semver { prefix semver; } 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 hw-module-profile package configuration. This YANG module augments the modules with configuration data. Copyright (c) 2021 by Cisco Systems, Inc. All rights reserved."; revision "2021-04-29" { description "Initial release"; } semver:module-version "1.0.0"; container hw-module { description "Configure h/w module"; container profile-tcam { description "Configure profile for TCAM LC cards"; container fib { description "Forwarding table to configure"; container ipv4 { description "Configure ipv4 addresses in TCAM"; container unicast { description "Unicast address"; leaf percent { type uint32 { range "1..100"; } description "percent to configure"; } container prefixes { description "ip prefix length"; list prefix { key "prefix-length"; description "ip prefix length"; leaf prefix-length { type uint32 { range "0..32"; } description "ip prefix length"; } leaf percent { type xr:Cisco-ios-xr-string { length "1..9"; pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; } mandatory true; description "prefix percentage to configure"; } } // list prefix } // container prefixes } // container unicast } // container ipv4 container ipv6 { description "Configure ipv6 addresses in TCAM"; container unicast { description "Unicast address"; leaf percent { type uint32 { range "0..100"; } description "percent to configure"; } container prefixes { description "ip prefix length"; list prefix { key "prefix-length"; description "ip prefix length"; leaf prefix-length { type uint32 { range "0..128"; } description "ip prefix length"; } leaf percent { type xr:Cisco-ios-xr-string { length "1..9"; pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; } mandatory true; description "prefix percentage to configure"; } } // list prefix } // container prefixes } // container unicast } // container ipv6 container v6mcast { description "Multicast address"; leaf percent { type uint32 { range "0..100"; } description "percent to configure"; } } // container v6mcast } // container fib container acl-prefix { description "ACL table to configure"; leaf percent { type uint32 { range "0..100"; } description "percent to configure"; } } // container acl-prefix container format { description "format of the tcam entry"; container access-list { description "Access List format"; container ipv4 { presence "Indicates a ipv4 node is configured."; description "IPv4"; container src-addr { presence "Indicates a src-addr node is configured."; description "source address, 32 bit qualifier"; } // container src-addr container dst-addr { presence "Indicates a dst-addr node is configured."; description "destination address, 32 bit qualifier"; } // container dst-addr container src-port { must "../frag-bit"; presence "Indicates a src-port node is configured."; description "source L4 port, 16 bit qualifier"; } // container src-port container dst-port { must "../frag-bit"; presence "Indicates a dst-port node is configured."; description "destination L4 Port, 16 bit qualifier"; } // container dst-port container proto { presence "Indicates a proto node is configured."; description "protocol type, 8 bit qualifier"; } // container proto container tcp-flags { must "../frag-bit"; presence "Indicates a tcp-flags node is configured."; description "tcp-flags, 6 bit qualifier"; } // container tcp-flags container packet-length { presence "Indicates a packet-length node is configured."; description "packet length, 16 bit qualifier"; } // container packet-length container frag-bit { presence "Indicates a frag-bit node is configured."; description "fragment-bit, 1 bit qualifier"; } // container frag-bit container common-acl { presence "Indicates a common-acl node is configured."; description "enable common-acl, 1 bit qualifier"; } // container common-acl container precedence { presence "Indicates a precedence node is configured."; description "precedence/dscp, 8 bit qualifier"; } // container precedence container port-range { must "../frag-bit"; presence "Indicates a port-range node is configured."; description "ipv4 port range qualifier, 24 bit qualifier"; } // container port-range container enable-capture { presence "Indicates a enable-capture node is configured."; description "Enable ACL based mirroring (Included by default)"; } // container enable-capture container enable-set-ttl { presence "Indicates a enable-set-ttl node is configured."; description "Enable Setting TTL field (Included by default)"; } // container enable-set-ttl container ttl-match { presence "Indicates a ttl-match node is configured."; description "Enable matching on TTL field"; } // container ttl-match container interface-based { presence "Indicates a interface-based node is configured."; description "Enable non-shared interface based ACL"; } // container interface-based leaf udf1 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf2 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf3 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf4 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf5 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf6 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf7 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf8 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } } // container ipv4 container ipv4-locations { description "Location of format access-list ipv4 config"; list location { key "location-name location-name2"; description "Location of format access-list ipv4 config"; leaf location-name { type xr:Node-id; description "Location of format access-list ipv4 config"; } leaf location-name2 { type xr:Node-id; description "Location of format access-list ipv4 config"; } container src-addr { presence "Indicates a src-addr node is configured."; description "source address, 32 bit qualifier"; } // container src-addr container dst-addr { presence "Indicates a dst-addr node is configured."; description "destination address, 32 bit qualifier"; } // container dst-addr container src-port { must "../frag-bit"; presence "Indicates a src-port node is configured."; description "source L4 port, 16 bit qualifier"; } // container src-port container dst-port { must "../frag-bit"; presence "Indicates a dst-port node is configured."; description "destination L4 Port, 16 bit qualifier"; } // container dst-port container proto { presence "Indicates a proto node is configured."; description "protocol type, 8 bit qualifier"; } // container proto container tcp-flags { must "../frag-bit"; presence "Indicates a tcp-flags node is configured."; description "tcp-flags, 6 bit qualifier"; } // container tcp-flags container packet-length { presence "Indicates a packet-length node is configured."; description "packet length, 16 bit qualifier"; } // container packet-length container frag-bit { presence "Indicates a frag-bit node is configured."; description "fragment-bit, 1 bit qualifier"; } // container frag-bit container common-acl { presence "Indicates a common-acl node is configured."; description "enable common-acl, 1 bit qualifier"; } // container common-acl container precedence { presence "Indicates a precedence node is configured."; description "precedence/dscp, 8 bit qualifier"; } // container precedence container port-range { must "../frag-bit"; presence "Indicates a port-range node is configured."; description "ipv4 port range qualifier, 24 bit qualifier"; } // container port-range container enable-capture { presence "Indicates a enable-capture node is configured."; description "Enable ACL based mirroring (Included by default)"; } // container enable-capture container enable-set-ttl { presence "Indicates a enable-set-ttl node is configured."; description "Enable Setting TTL field (Included by default)"; } // container enable-set-ttl container ttl-match { presence "Indicates a ttl-match node is configured."; description "Enable matching on TTL field"; } // container ttl-match container interface-based { presence "Indicates a interface-based node is configured."; description "Enable non-shared interface based ACL"; } // container interface-based leaf udf1 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf2 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf3 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf4 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf5 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf6 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf7 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf8 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } } // list location } // container ipv4-locations container ipv6 { must "src-port and next-hdr"; presence "Indicates a ipv6 node is configured."; description "IPv6"; container src-addr { presence "Indicates a src-addr node is configured."; description "source address, 128 bit qualifier"; } // container src-addr container src-port { presence "Indicates a src-port node is configured."; description "source L4 Port, 16 bit qualifier (manditory field)"; } // container src-port container dst-addr { presence "Indicates a dst-addr node is configured."; description "destination address, 128 bit qualifier"; } // container dst-addr container dst-port { presence "Indicates a dst-port node is configured."; description "destination L4 Port, 16 bit qualifier"; } // container dst-port container next-hdr { presence "Indicates a next-hdr node is configured."; description "next header, 8 bit qualifier (manditory field)"; } // container next-hdr container tcp-flags { presence "Indicates a tcp-flags node is configured."; description "tcp-flags, 8 bit qualifier"; } // container tcp-flags container payload-length { presence "Indicates a payload-length node is configured."; description "payload length, 16 bit qualifier"; } // container payload-length container frag-bit { presence "Indicates a frag-bit node is configured."; description "fragment-bit, 1 bit qualifier"; } // container frag-bit container traffic-class { presence "Indicates a traffic-class node is configured."; description "Traffic Class, 8 bit qualifier"; } // container traffic-class container enable-capture { presence "Indicates a enable-capture node is configured."; description "Enable ACL based mirroring (Included by default)"; } // container enable-capture container enable-set-ttl { presence "Indicates a enable-set-ttl node is configured."; description "Enable Setting TTL field (Included by default)"; } // container enable-set-ttl container common-acl { presence "Indicates a common-acl node is configured."; description "enable common-acl, 1 bit qualifier"; } // container common-acl container ttl-match { presence "Indicates a ttl-match node is configured."; description "Enable matching on TTL field"; } // container ttl-match container interface-based { presence "Indicates a interface-based node is configured."; description "Enable non-shared interface based ACL"; } // container interface-based leaf udf1 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf2 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf3 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf4 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf5 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf6 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf7 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } leaf udf8 { type xr:Cisco-ios-xr-string { length "1..800"; } description "user defined filter"; } } // container ipv6 container ipv6-locations { description "Location of format access-list ipv6 config"; list location { must "src-port and next-hdr"; key "location-name location-name2"; description "Location of format access-list ipv6 config"; leaf location-name { type xr:Node-id; description "Location of format access-list ipv6 config"; } leaf location-name2 { type xr:Node-id; description "Location of format access-list ipv6 config"; } container src-addr { presence "Indicates a src-addr node is configured."; description "source address, 32 bit qualifier"; } // container src-addr container src-port { presence "Indicates a src-port node is configured."; description "source L4 port, 16 bit qualifier"; } // container src-port container dst-addr { presence "Indicates a dst-addr node is configured."; description "destination address, 32 bit qualifier"; } // container dst-addr container dst-port { presence "Indicates a dst-port node is configured."; description "destination L4 Port, 16 bit qualifier"; } // container dst-port container next-hdr { presence "Indicates a next-hdr node is configured."; description "next header, 8 bit qualifier (manditory field)"; } // container next-hdr container tcp-flags { presence "Indicates a tcp-flags node is configured."; description "tcp-flags, 6 bit qualifier"; } // container tcp-flags container payload-length { presence "Indicates a packet-length node is configured."; description "packet length, 16 bit qualifier"; } // container payload-length container frag-bit { presence "Indicates a frag-bit node is configured."; description "fragment-bit, 1 bit qualifier"; } // container frag-bit container traffic-class { presence "Indicates a traffic-class node is configured."; description "Traffic Class, 8 bit qualifier"; } // container traffic-class container enable-capture { presence "Indicates a enable-capture node is configured."; description "Enable ACL based mirroring (Included by default)"; } // container enable-capture container enable-set-ttl { presence "Indicates a enable-set-ttl node is configured."; description "Enable Setting TTL field (Included by default)"; } // container enable-set-ttl container common-acl { presence "Indicates a common-acl node is configured."; description "enable common-acl, 1 bit qualifier"; } // container common-acl container ttl-match { presence "Indicates a ttl-match node is configured."; description "Enable matching on TTL field"; } // container ttl-match container interface-based { presence "Indicates a interface-based node is configured."; description "Enable non-shared interface based ACL"; } // container interface-based leaf udf1 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf2 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf3 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf4 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf5 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf6 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf7 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } leaf udf8 { type xr:Cisco-ios-xr-string { length "1..1024"; } description "user defined filter"; } } // list location } // container ipv6-locations } // container access-list } // container format } // container profile-tcam container profile-acl { description "Configure acl profile"; container egress { description "egress acl"; container layer3 { description "egress layer3 acl"; container interface-based { presence "Indicates a interface-based node is configured."; description "egress layer3 interface-based acl"; } // container interface-based } // container layer3 } // container egress container ipv6 { description "ipv6 protocol specific options"; container ext-header { description "ipv6 extension header related options"; container permit { presence "Indicates a permit node is configured."; description "allow permit of extension header packets"; } // container permit } // container ext-header } // container ipv6 container ingress { description "ingress acl"; container compress { description "Specify ACL compression in hardware"; container enable { presence "Indicates a enable node is configured."; description "Enable ACL compression in hardware"; } // container enable container enable-locations { description "Location of acl config"; list location { key "location-name location-name2"; description "Location of acl config"; leaf location-name { type xr:Node-id; description "Location of acl config"; } leaf location-name2 { type xr:Node-id; description "Location of acl config"; } } // list location } // container enable-locations } // container compress } // container ingress } // container profile-acl container profile-load-balance { description "Configure load balance parameters"; container algorithm { description "Configure hashing algorithm profiles"; container layer2 { must "not(../ip-tunnel or ../mpls-safe-speculative-parsing or ../l3-only or ../gtp or ../gtp-mpls or ../pppo-e)"; presence "Indicates a layer2 node is configured."; description "Layer 2 optimized."; } // container layer2 container ip-tunnel { must "not(../layer2 or ../mpls-safe-speculative-parsing or ../l3-only or ../gtp or ../gtp-mpls or ../pppo-e)"; presence "Indicates a ip-tunnel node is configured."; description "IP tunnel optimized."; } // container ip-tunnel container mpls-safe-speculative-parsing { must "not(../layer2 or ../ip-tunnel or ../l3-only or ../gtp or ../gtp-mpls or ../pppo-e)"; presence "Indicates a mpls-safe-speculative-parsing node is configured."; description "MPLS safe Speculative parsing."; } // container mpls-safe-speculative-parsing container l3-only { must "not(../layer2 or ../ip-tunnel or ../mpls-safe-speculative-parsing or ../gtp or ../gtp-mpls or ../pppo-e)"; presence "Indicates a l3-only node is configured."; description "L3 Header only Hash."; } // container l3-only container gtp { must "not(../layer2 or ../ip-tunnel or ../mpls-safe-speculative-parsing or ../l3-only or ../gtp-mpls or ../pppo-e)"; presence "Indicates a gtp node is configured."; description "GTP optimized."; } // container gtp container gtp-mpls { must "not(../layer2 or ../ip-tunnel or ../mpls-safe-speculative-parsing or ../l3-only or ../gtp or ../pppo-e)"; presence "Indicates a gtp-mpls node is configured."; description "GTP over MPLS optimized hash."; } // container gtp-mpls container pppo-e { must "not(../layer2 or ../ip-tunnel or ../mpls-safe-speculative-parsing or ../l3-only or ../gtp or ../gtp-mpls)"; presence "Indicates a pppo-e node is configured."; description "PPPoE session based optimized hash. Reload is required for this option"; } // container pppo-e } // container algorithm } // container profile-load-balance container profile-bundle-hash { description "Adjust bundle-hash algorithm"; container hash-index { description "configure which polynomial to use in bundle-hash"; container locations { description "Location of bundle-hash polynomial config"; list location { key "location-name location-name2"; description "Location of bundle-hash polynomial config"; leaf location-name { type xr:Node-id; description "Location of bundle-hash polynomial config"; } leaf location-name2 { type xr:Node-id; description "Location of bundle-hash polynomial config"; } leaf index { type enumeration { enum "1" { value 1; description "Use Polynomial value 0x8011"; } enum "2" { value 2; description "Use Polynomial value 0x8423"; } enum "3" { value 3; description "Use Polynomial value 0x8101"; } enum "4" { value 4; description "Use Polynomial value 0x84A1"; } enum "5" { value 5; description "Use Polynomial value 0x9019"; } enum "10" { value 10; description "Use LB-Key-Pkt-Data directly"; } enum "11" { value 11; description "Use counter incremented every packet"; } enum "12" { value 12; description "Use counter incremented every two clocks"; } } mandatory true; description "Configure hash index"; } } // list location } // container locations } // container hash-index container ignore-ingress-port { presence "Indicates a ignore-ingress-port node is configured."; description "Disable ingress port during bundle hash computation"; } // container ignore-ingress-port container per-packet-round-robin { presence "Indicates a per-packet-round-robin node is configured."; description "Enable per-packet round robin loadbalancing for all bundles in system"; } // container per-packet-round-robin } // container profile-bundle-hash container profile-qos { description "Configure qos profile"; leaf max-classmap-size { type enumeration { enum "32" { value 32; description "Max 32 class-maps per policy"; } enum "16" { value 16; description "Max 16 class-maps per policy"; } enum "8" { value 8; description "Max 8 class-maps per policy"; } enum "4" { value 4; description "Max 4 class-maps per policy"; } } description "max class map size"; } container max-classmap-size-locations { description "Location of QoS config"; list location { key "location-name location-name2"; description "Location of QoS config"; leaf location-name { type xr:Node-id; description "Location of QoS config"; } leaf location-name2 { type xr:Node-id; description "Location of QoS config"; } leaf max-classmap-size { type enumeration { enum "32" { value 32; description "Max 32 class-maps per policy"; } enum "16" { value 16; description "Max 16 class-maps per policy"; } enum "8" { value 8; description "Max 8 class-maps per policy"; } enum "4" { value 4; description "Max 4 class-maps per policy"; } } mandatory true; description "max class map size"; } } // list location } // container max-classmap-size-locations container ingress-model { description "QoS model for ingress feature"; container peering { presence "Indicates a peering node is configured."; description "Peering model for ingress QoS"; } // container peering container peering-locations { description "Peering model for ingress QoS with location"; list location { key "location-name location-name2"; description "Location of QoS config"; leaf location-name { type xr:Node-id; description "Location of QoS config"; } leaf location-name2 { type xr:Node-id; description "Location of QoS config"; } } // list location } // container peering-locations } // container ingress-model container qosg-dscp-mark-enable { presence "Indicates a qosg-dscp-mark-enable node is configured."; description "Enable both 'set qos-group' and 'set dscp/precedence' actions in the same ingress QoS policy"; leaf first-dscp-precedence-value { type uint32 { range "0..63"; } mandatory true; description "Enable both 'set qos-group' and 'set dscp/precedence' actions in the same ingress QoS policy"; } leaf second-dscp-precedence-value { type uint32 { range "0..63"; } must "../first-dscp-precedence-value"; description "Second DSCP/Precedence value"; } leaf third-dscp-precedence-value { type uint32 { range "0..63"; } must "../second-dscp-precedence-value"; must "../second-dscp-precedence-value"; description "Third DSCP/Precedence value"; } leaf fourth-dscp-precedence-value { type uint32 { range "0..63"; } must "../third-dscp-precedence-value"; must "../third-dscp-precedence-value"; description "Fourth DSCP/Precedence value"; } leaf fifth-dscp-precedence-value { type uint32 { range "0..63"; } must "../fourth-dscp-precedence-value"; must "../fourth-dscp-precedence-value"; description "Fifth DSCP/Precedence value"; } leaf sixth-dscp-precedence-value { type uint32 { range "0..63"; } must "../fifth-dscp-precedence-value"; must "../fifth-dscp-precedence-value"; description "Sixth DSCP/Precedence value"; } leaf seventh-dscp-precedence-value { type uint32 { range "0..63"; } must "../sixth-dscp-precedence-value"; must "../sixth-dscp-precedence-value"; description "Seventh DSCP/Precedence value"; } leaf eighth-dscp-precedence-value { type uint32 { range "0..63"; } must "../seventh-dscp-precedence-value"; must "../seventh-dscp-precedence-value"; description "Eighth DSCP/Precedence value"; } } // container qosg-dscp-mark-enable container hqos-enable { presence "Indicates a hqos-enable node is configured."; description "Enable Hierarchical QoS"; } // container hqos-enable container ecn-marking-stats { presence "Indicates a ecn-marking-stats node is configured."; description "Enable ECN marking stats mode"; } // container ecn-marking-stats container shared-policer-per-class-stats { presence "Indicates a shared-policer-per-class-stats node is configured."; description "Enable shared policer (per class stats) mode"; } // container shared-policer-per-class-stats container wred-stats-enable { presence "Indicates a wred-stats-enable node is configured."; description "Enable Wred egress stats"; } // container wred-stats-enable container ipv6 { description "Configure ipv6 protocol"; container short { presence "Indicates a short node is configured."; description "Configure ipv6 source short address tcam lookup"; } // container short container short-l2qos-enable { presence "Indicates a short-l2qos-enable node is configured."; description "Enable l2qos feature which requires to reduce ipv6 dest mask to 96 bits"; } // container short-l2qos-enable container short-etm { presence "Indicates a short-etm node is configured."; description "Enable TC matching feature in ETM which requires reduction of IPv6 dest mask to 96 bits"; } // container short-etm } // container ipv6 container conform-aware-policer { presence "Indicates a conform-aware-policer node is configured."; description "Configure Conform Aware Policer mode"; } // container conform-aware-policer } // container profile-qos leaf profile-bundle-scale { type enumeration { enum "256" { value 256; description "Max 256 trunks, Max 64 members"; } enum "512" { value 512; description "Max 512 trunks, Max 32 members"; } enum "1024" { value 1024; description "Max 1024 trunks, Max 16 members"; } } description "Max number of bundles supported"; } container profile-npu { description "Configure operating profiles for NPUs"; container native-mode-enable { presence "Indicates a native-mode-enable node is configured."; description "Enable NPUs to operate in native mode"; } // container native-mode-enable } // container profile-npu container profile-mdb { description "Different MDB profiles supported"; container l3max { must "not(../l3max-se or ../l2max or ../l2max-se or ../balanced)"; presence "Indicates a l3max node is configured."; description "l3max profile for router containing non-TCAM cards"; } // container l3max container l3max-se { must "not(../l3max or ../l2max or ../l2max-se or ../balanced)"; presence "Indicates a l3max-se node is configured."; description "l3max-se profile for router containing only TCAM cards"; } // container l3max-se container l2max { must "not(../l3max or ../l3max-se or ../l2max-se or ../balanced)"; presence "Indicates a l2max node is configured."; description "l2max profile for router containing non-TCAM cards"; } // container l2max container l2max-se { must "not(../l3max or ../l3max-se or ../l2max or ../balanced)"; presence "Indicates a l2max-se node is configured."; description "l2max-se profile for router containing only TCAM cards"; } // container l2max-se container balanced { must "not(../l3max or ../l3max-se or ../l2max or ../l2max-se)"; presence "Indicates a balanced node is configured."; description "balanced profile for router containing non-TCAM cards"; } // container balanced } // container profile-mdb container profile-netflow { description "Configure Netflow profile."; container ipfix315-enable { presence "Indicates a ipfix315-enable node is configured."; description "IPFIX 315 enable "; } // container ipfix315-enable container ipfix315-enable-locations { description "Location of NETFLOW config"; list location { key "location-name location-name2"; description "Location of NETFLOW config"; leaf location-name { type xr:Node-id; description "Location of NETFLOW config"; } leaf location-name2 { type xr:Node-id; description "Location of NETFLOW config"; } } // list location } // container ipfix315-enable-locations container sflow-enable { presence "Indicates a sflow-enable node is configured."; description "SFLOW enable "; } // container sflow-enable container sflow-enable-locations { description "Location of NETFLOW config"; list location { key "location-name location-name2"; description "Location of NETFLOW config"; leaf location-name { type xr:Node-id; description "Location of NETFLOW config"; } leaf location-name2 { type xr:Node-id; description "Location of NETFLOW config"; } } // list location } // container sflow-enable-locations container fpc-enable { presence "Indicates a fpc-enable node is configured."; description "Netflow full packet capture enable "; } // container fpc-enable container fpc-enable-locations { description "Location of NETFLOW config"; list location { key "location-name location-name2"; description "Location of NETFLOW config"; leaf location-name { type xr:Node-id; description "Location of NETFLOW config"; } leaf location-name2 { type xr:Node-id; description "Location of NETFLOW config"; } } // list location } // container fpc-enable-locations } // container profile-netflow container profile-stats { description "Configure stats profile."; container acl-permit { must "not(../qos-enhanced or ../ingress-sr or ../enh-sr-policy or ../ingress-sr-mspw or ../j2-dynamic-stats or ../tx-scale-enhanced)"; presence "Indicates a acl-permit node is configured."; description "Enable ACL permit stats."; } // container acl-permit container qos-enhanced { must "not(../acl-permit or ../ingress-sr or ../enh-sr-policy or ../ingress-sr-mspw or ../j2-dynamic-stats or ../tx-scale-enhanced)"; presence "Indicates a qos-enhanced node is configured."; description "Enable enhanced QoS stats."; } // container qos-enhanced container ingress-sr { must "not(../acl-permit or ../qos-enhanced or ../enh-sr-policy or ../ingress-sr-mspw or ../j2-dynamic-stats or ../tx-scale-enhanced)"; presence "Indicates a ingress-sr node is configured."; description "Enable ingress SR stats profile counter."; } // container ingress-sr container enh-sr-policy { must "not(../acl-permit or ../qos-enhanced or ../ingress-sr or ../ingress-sr-mspw or ../j2-dynamic-stats or ../tx-scale-enhanced)"; presence "Indicates a enh-sr-policy node is configured."; description "Enable Enhanced_SR_Policy_Scale stats profile counter."; } // container enh-sr-policy container ingress-sr-mspw { must "not(../acl-permit or ../qos-enhanced or ../ingress-sr or ../enh-sr-policy or ../j2-dynamic-stats or ../tx-scale-enhanced)"; presence "Indicates a ingress-sr-mspw node is configured."; description "Enable ingress SR & MSPW stats profile counter."; } // container ingress-sr-mspw container j2-dynamic-stats { must "not(../acl-permit or ../qos-enhanced or ../ingress-sr or ../enh-sr-policy or ../ingress-sr-mspw or ../tx-scale-enhanced)"; presence "Indicates a j2-dynamic-stats node is configured."; description "Enable J2 Dynamic Stats Infra."; } // container j2-dynamic-stats container tx-scale-enhanced { must "not(../qos-enhanced or ../ingress-sr or ../enh-sr-policy or ../ingress-sr-mspw or ../j2-dynamic-stats or ../acl-permit)"; presence "Indicates a tx-scale-enhanced node is configured."; description "Enable enhanced TX stats scale (Non L2 stats)."; container acl-permit { must "not(../qos-enhanced or ../ingress-sr)"; presence "Indicates a acl-permit node is configured."; description "Enable ACL permit stats."; } // container acl-permit container qos-enhanced { must "not(../acl-permit or ../ingress-sr)"; presence "Indicates a qos-enhanced node is configured."; description "Enable enhanced QoS stats."; } // container qos-enhanced container ingress-sr { must "not(../qos-enhanced or ../acl-permit)"; presence "Indicates a ingress-sr node is configured."; description "Enable ingress SR stats profile counter."; } // container ingress-sr } // container tx-scale-enhanced } // container profile-stats container profile-flowspec { description "Configure support for v6 flowspec"; container v6-enable { presence "Indicates a v6-enable node is configured."; description "Configure support for v6 flowspec"; } // container v6-enable container v6-enable-locations { description "Location of flowspec config"; list location { key "location-name location-name2"; description "Location of flowspec config"; leaf location-name { type xr:Node-id; description "Location of flowspec config"; } leaf location-name2 { type xr:Node-id; description "Location of flowspec config"; } } // list location } // container v6-enable-locations } // container profile-flowspec container profile-segment-routing { description "Segment routing options"; container srv6 { presence "Indicates a srv6 node is configured."; description "Configure support for SRv6 and its paramaters"; container mode { description "Mode of operation"; container base { must "not(../micro-segment/format/f3216 or ../base-and-micro-segment-f3216)"; presence "Indicates a base node is configured."; description "Base SRv6 (Format-1) support only"; container encapsulation { description "Configure encapsulation parameters"; container traffic-class { description "Control traffic-class field on IPv6 header"; container propagate { must "not(../traffic-class-value)"; presence "Indicates a propagate node is configured."; description "Propagate traffic-class from incoming packet/frame"; } // container propagate leaf traffic-class-value { type uint32 { range "0..255"; } must "not(../propagate)"; description "Traffic-class value (specified as 2 hexadecimal nibbles)"; } } // container traffic-class } // container encapsulation } // container base container base-and-micro-segment-f3216 { must "not(../micro-segment/format/f3216 or ../base)"; presence "Indicates a base-and-micro-segment-f3216 node is configured."; description "Base (F1) and F3216 co-existence support"; container encapsulation { description "Configure encapsulation parameters"; container traffic-class { description "Control traffic-class field on IPv6 header"; container propagate { must "not(../traffic-class-value)"; presence "Indicates a propagate node is configured."; description "Propagate traffic-class from incoming packet/frame"; } // container propagate leaf traffic-class-value { type uint32 { range "0..255"; } must "not(../propagate)"; description "Traffic-class value (specified as 2 hexadecimal nibbles)"; } } // container traffic-class } // container encapsulation } // container base-and-micro-segment-f3216 container micro-segment { description "Micro-segment support only"; container format { description "Specify carrier format"; container f3216 { must "not(../../../base or ../../../base-and-micro-segment-f3216)"; presence "Indicates a f3216 node is configured."; description "32-bit block and 16-bit IDs"; container encapsulation { description "Configure encapsulation parameters"; container traffic-class { description "Control traffic-class field on IPv6 header"; container propagate { must "not(../traffic-class-value)"; presence "Indicates a propagate node is configured."; description "Propagate traffic-class from incoming packet/frame"; } // container propagate leaf traffic-class-value { type uint32 { range "0..255"; } must "not(../propagate)"; description "Traffic-class value (specified as 2 hexadecimal nibbles)"; } } // container traffic-class } // container encapsulation } // container f3216 } // container format } // container micro-segment } // container mode } // container srv6 } // container profile-segment-routing container profile-offload { description "Offload profile in NCS5501-SE"; container one { must "not(../two or ../three)"; presence "Indicates a one node is configured."; description "BFDv6 and Bsync"; } // container one container two { must "not(../one or ../three)"; presence "Indicates a two node is configured."; description "BFDv6 and Route download"; } // container two container three { must "not(../one or ../two)"; presence "Indicates a three node is configured."; description "Route download and Bsync"; } // container three } // container profile-offload container profile-sr-policy { description "SR Policy options"; container v6-null-label-autopush { presence "Indicates a v6-null-label-autopush node is configured."; description "Configure IPV6 NULL label autopush for SR policy"; } // container v6-null-label-autopush } // container profile-sr-policy leaf profile-bw-threshold { type xr:Cisco-ios-xr-string { length "1..3"; pattern "(100|[1-9]?0|0)"; } description "Asic Fabric Link Bandwidth Availability Threshold"; } container profile-oam { description "Configure oam profile"; container sat-enable { presence "Indicates a sat-enable node is configured."; description "enable SAT feature"; } // container sat-enable } // container profile-oam container profile-priority-flow-control { description "Configure priority-flow-control parameters"; container traffic-classes { description "configure traffic-class"; list traffic-class { key "traffic-class-id"; description "configure traffic-class"; leaf traffic-class-id { type uint32 { range "0..7"; } description "configure traffic-class"; } leaf pause-threshold { type uint32 { range "1..4294967295"; } mandatory true; description "configure pause-threshold"; } leaf resume-threshold { type uint32 { range "1..4294967295"; } mandatory true; description "configure resume-threshold"; } leaf headroom { type uint32 { range "1..4294967295"; } mandatory true; description "configure headroom"; } } // list traffic-class } // container traffic-classes container traffic-class-locations { description "Location to apply PFC configuration"; list traffic-class-location { key "location-name location-name2 traffic-class-id"; description "Location to apply PFC configuration"; leaf location-name { type xr:Node-id; description "Location to apply PFC configuration"; } leaf location-name2 { type xr:Node-id; description "Location to apply PFC configuration"; } leaf traffic-class-id { type uint32 { range "0..7"; } description "configure traffic-class"; } leaf pause-threshold { type uint32 { range "1..4294967295"; } mandatory true; description "configure pause-threshold"; } leaf resume-threshold { type uint32 { range "1..4294967295"; } mandatory true; description "configure resume-threshold"; } leaf headroom { type uint32 { range "1..4294967295"; } mandatory true; description "configure headroom"; } } // list traffic-class-location } // container traffic-class-locations } // container profile-priority-flow-control container profile-routing { description "Configure the node's routing profile"; container role { description "Configure the node's routing role"; container core { presence "Indicates a core node is configured."; description "Configure the routing role as a core router"; } // container core } // container role } // container profile-routing container bundle-pindown-bum-optimization { description "To configure bundle-pindown-bum-optimization"; container enable { presence "Indicates a enable node is configured."; description "Enable bundle pindown bum-optimization mode"; } // container enable } // container bundle-pindown-bum-optimization container storm-control-combine-policer-bw { description "To configure combine policer for storm control of BUM Traffic"; container enable { presence "Indicates a enable node is configured."; description "Enable storm-control-combine-policer-bw mode"; } // container enable } // container storm-control-combine-policer-bw container tcam { description "Configure profile for TCAM LC cards"; container fib { description "Forwarding table to configure"; container ipv4 { description "Configure ipv4 protocol"; container scaledisable { presence "Indicates a scaledisable node is configured."; description "Configure scale mode for TCAM card"; } // container scaledisable } // container ipv4 } // container fib } // container tcam container fib { description "Forwarding table to configure"; container ipv4 { description "Configure ipv4 protocol"; container scale { description "Configure scale mode for no-TCAM card"; container host-optimized-disable { must "not(../internet-optimized)"; presence "Indicates a host-optimized-disable node is configured."; description "Configure Host optimization by default"; } // container host-optimized-disable container internet-optimized { must "not(../host-optimized-disable)"; presence "Indicates a internet-optimized node is configured."; description "Configure Internet optimized (DEPRECATED)"; } // container internet-optimized } // container scale } // container ipv4 container ipv6 { description "Configure ipv6 protocol"; container scale { description "Configure scale mode for no-TCAM card"; container internet-optimized-disable { presence "Indicates a internet-optimized-disable node is configured."; description "Configure by default Intetrnet optimized"; } // container internet-optimized-disable leaf custom-lem { type uint32 { range "40..64"; } description "Customise the prefix distribution to LEM"; } } // container scale } // container ipv6 container mpls { description "Configure mpls protocol"; container ldp { presence "Indicates a ldp node is configured."; description "Configure signalling protocol for MPLS"; container lsr-optimized { presence "Indicates a lsr-optimized node is configured."; description "Configure optimization for LSR role"; } // container lsr-optimized } // container ldp container label { description "Configure MPLS label convergence optimization for LDP/SR labels"; container lsr-optimized { presence "Indicates a lsr-optimized node is configured."; description "Configure LSR optimization"; } // container lsr-optimized container tcam-optimized { presence "Indicates a tcam-optimized node is configured."; description "Configure push label in tcam optimization"; } // container tcam-optimized } // container label } // container mpls container recycle { description "Recycle traffic"; container service-over-rsvpte { presence "Indicates a service-over-rsvpte node is configured."; description "Recycle traffic for BGP services going over RSVP TE"; } // container service-over-rsvpte } // container recycle } // container fib container oversubscription { description "Configure oversubscription"; container prioritize { description "Setting prioritization of CoS values"; list interface { must "cos/cos-value or untagged"; key "interface-name"; leaf interface-name { type xr:Interface-name; description "Interface name"; } container cos { description "CoS values between 0-5"; list cos-value { key "value"; description "CoS values between 0-5"; leaf value { type uint32 { range "0..5"; } description "CoS values between 0-5"; } } // list cos-value } // container cos container untagged { presence "Indicates a untagged node is configured."; description "Prioritize untagged packets"; } // container untagged } // list interface } // container prioritize } // container oversubscription container vrrpscale { description "to scale VRRP sessions"; container enable { presence "Indicates a enable node is configured."; description "enable VRRP scaling"; } // container enable } // container vrrpscale container fib-bgp-pic { description "Prefix Independent Convergnce"; container multipath-core { description "Multipath pic core in forwarding chain"; container enable { presence "Indicates a enable node is configured."; description "Enable pic core in forwarding chain"; } // container enable } // container multipath-core } // container fib-bgp-pic container fib-dlb { description "Destination Based Load balancing"; container level-1 { description "DLB at level 1 of forwarding chain"; container enable { presence "Indicates a enable node is configured."; description "DLB at level 1 of forwarding chain"; } // container enable } // container level-1 } // container fib-dlb } // container hw-module } // module Cisco-IOS-XR-um-hw-module-profile-cfg
© 2023 YumaWorks, Inc. All rights reserved.